Add MinerOps branding and project README

This commit is contained in:
lussierj committed 2026-07-28 16:49:48 +00:00
1 parent d1d02962da
commit 1cae60ab46
8 files changed
+340 -84

No files matched your search

+111
View File
@@ -0,0 +1,111 @@
# MinerOps Brand Guidelines
## Brand Position
MinerOps is practical infrastructure for operators who need a clear, reliable
view of mining assets, repairs, locations, and controls. The identity should
feel precise, capable, and built for daily engineering work.
Primary tagline:
> The self-hosted operating system for cryptocurrency mining operations.
Secondary tagline:
> Know every miner. Track every repair. Control every rack.
## Branding Philosophy
- **Operational clarity:** Prefer direct language, strong hierarchy, and
purposeful visual elements.
- **Engineering confidence:** Use measured geometry, consistent spacing, and
restrained color.
- **Self-hosted independence:** Present MinerOps as dependable infrastructure
owned and controlled by its operator.
- **Human utility:** Keep the identity approachable and readable without
becoming playful or ornamental.
## Logo System
The MinerOps mark combines a geometric hexagon with an angular letter M. The
hexagon suggests infrastructure, modular systems, and engineered hardware. The
M creates immediate product recognition.
Available placeholders:
- `logo.svg`: Primary mark for general use.
- `logo-light.svg`: Navy and orange mark for light backgrounds.
- `logo-dark.svg`: White and orange mark for dark backgrounds.
- `favicon.svg`: Compact filled mark optimized for small sizes.
- `wordmark.svg`: Symbol paired with the MinerOps name.
Use the supplied artwork without changing its proportions, stroke weights, or
relative colors. Do not rotate, skew, outline, add effects, or place the mark
inside another shape. Do not use gradients.
## Clear Space
Maintain clear space around the logo equal to at least one quarter of the
mark's width. For the wordmark, use the hexagon's internal margin as the
minimum clear space on every side.
Recommended minimum sizes:
- Standalone logo: 24 px digital, 8 mm print.
- Wordmark: 120 px digital, 32 mm print.
- Favicon: 16 px digital.
## Wordmark Usage
Use the wordmark when the audience needs explicit product identification, such
as documentation covers, sign-in screens, repository graphics, and event
materials. Use the standalone mark where MinerOps is already named nearby or
space is limited.
Keep `Miner` in Miner Navy or White and `Ops` in Ops Orange. Do not alter the
capitalization or insert a space between the words.
## Typography
Recommended interface and brand typefaces:
1. **Inter:** Primary choice for user interfaces, documentation, and marketing
copy.
2. **IBM Plex Sans:** Alternative for a more technical editorial voice.
3. **IBM Plex Mono:** Recommended for asset IDs, IP addresses, serial numbers,
logs, and other machine-oriented data.
Use system sans-serif fallbacks when these fonts are unavailable. Favor medium
or semibold weights for headings and regular weight for body copy. Avoid
condensed, decorative, or rounded display type.
## Spacing
Use a 4 px base spacing unit for digital products. Preferred increments are
4, 8, 12, 16, 24, 32, 48, and 64 px. Align logo placement, typography, and
supporting elements to a consistent grid.
Brand compositions should have enough open space to feel calm and technical.
Avoid crowding the mark with borders, controls, or dense copy.
## Icon Usage
Use simple outline icons with consistent stroke weight and square optical
bounds. Icons should describe actions or system states, not serve as
decoration. Use filled icons sparingly for selected or critical states.
Prefer Miner Navy or Steel Gray for neutral icons, Ops Orange for active
emphasis, and semantic colors defined by the product design system for status
and alerts.
Do not force unrelated interface icons into the hexagonal logo enclosure. The
hexagon-and-M combination is reserved for the MinerOps brand.
## Tagline Usage
Use the primary tagline for formal product positioning and first introductions.
Use the secondary tagline for compact campaign copy, presentation endings, or
operator-focused material.
Taglines should appear as supporting copy and should not be locked permanently
to the logo artwork. Preserve the exact wording and punctuation shown above.
+40
View File
@@ -0,0 +1,40 @@
# MinerOps Color Palette
## Core Colors
| Color | Hex | Intended usage |
| --- | --- | --- |
| Miner Navy | `#0F172A` | Primary brand color, headings, navigation, dark surfaces, and the main logo structure |
| Ops Orange | `#F97316` | Active emphasis, calls to action, selected states, and the M or Ops accent |
| Steel Gray | `#475569` | Secondary text, neutral icons, borders, metadata, and supporting UI elements |
| Light Gray | `#E2E8F0` | Dividers, subtle borders, disabled surfaces, and light neutral backgrounds |
| White | `#FFFFFF` | Content surfaces, reversed text, and logo details on dark backgrounds |
## Usage Principles
- Use Miner Navy as the primary visual anchor.
- Reserve Ops Orange for meaningful emphasis rather than large background
fields.
- Use Steel Gray for supporting information that should remain readable without
competing with primary content.
- Use Light Gray to organize interfaces with subtle separation.
- Use White to preserve clarity and contrast on dark or dense surfaces.
- Do not introduce gradients into core brand artwork.
- Check text and control combinations for accessible contrast before production
use.
## Common Combinations
| Context | Background | Foreground or accent |
| --- | --- | --- |
| Standard light surface | White | Miner Navy with Ops Orange emphasis |
| Subtle light surface | Light Gray | Miner Navy or Steel Gray |
| Primary dark surface | Miner Navy | White with Ops Orange emphasis |
| Neutral metadata | White or Light Gray | Steel Gray |
| Active control | Ops Orange | Miner Navy or White after contrast review |
## Color Proportions
For general brand compositions, use neutral surfaces and Miner Navy for most of
the visual area. Ops Orange should typically occupy the smallest share and
signal action, focus, or product identity.
+5
View File
@@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-labelledby="title">
<title id="title">MinerOps favicon</title>
<path fill="#0F172A" d="M32 2 59 17.5v29L32 62 5 46.5v-29L32 2Z"/>
<path fill="none" stroke="#F97316" stroke-linecap="square" stroke-linejoin="miter" stroke-width="7" d="M18 44V21l14 14 14-14v23"/>
</svg>

After

Width:  |  Height:  |  Size: 350 B

+5
View File
@@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-labelledby="title">
<title id="title">MinerOps logo for dark backgrounds</title>
<path fill="#FFFFFF" d="M32 3 57 17.5v29L32 61 7 46.5v-29L32 3Zm0 6.9L13 20.8v22.4l19 10.9 19-10.9V20.8L32 9.9Z"/>
<path fill="none" stroke="#F97316" stroke-linecap="square" stroke-linejoin="miter" stroke-width="6" d="M19 43V22l13 13 13-13v21"/>
</svg>

After

Width:  |  Height:  |  Size: 416 B

+5
View File
@@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-labelledby="title">
<title id="title">MinerOps logo for light backgrounds</title>
<path fill="none" stroke="#0F172A" stroke-linejoin="miter" stroke-width="6" d="M32 6.5 54 19v26L32 57.5 10 45V19L32 6.5Z"/>
<path fill="none" stroke="#F97316" stroke-linecap="square" stroke-linejoin="miter" stroke-width="6" d="M19 43V22l13 13 13-13v21"/>
</svg>

After

Width:  |  Height:  |  Size: 426 B

+5
View File
@@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-labelledby="title">
<title id="title">MinerOps logo</title>
<path fill="#0F172A" d="M32 3 57 17.5v29L32 61 7 46.5v-29L32 3Zm0 6.9L13 20.8v22.4l19 10.9 19-10.9V20.8L32 9.9Z"/>
<path fill="none" stroke="#F97316" stroke-linecap="square" stroke-linejoin="miter" stroke-width="6" d="M19 43V22l13 13 13-13v21"/>
</svg>

After

Width:  |  Height:  |  Size: 395 B

+9
View File
@@ -0,0 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 72" role="img" aria-labelledby="title">
<title id="title">MinerOps wordmark</title>
<g transform="translate(4 4) scale(.95)">
<path fill="#0F172A" d="M32 3 57 17.5v29L32 61 7 46.5v-29L32 3Zm0 6.9L13 20.8v22.4l19 10.9 19-10.9V20.8L32 9.9Z"/>
<path fill="none" stroke="#F97316" stroke-linecap="square" stroke-linejoin="miter" stroke-width="6" d="M19 43V22l13 13 13-13v21"/>
</g>
<text x="76" y="49" fill="#0F172A" font-family="Inter, IBM Plex Sans, Arial, sans-serif" font-size="42" font-weight="700">Miner</text>
<text x="188" y="49" fill="#F97316" font-family="Inter, IBM Plex Sans, Arial, sans-serif" font-size="42" font-weight="700">Ops</text>
</svg>

After

Width:  |  Height:  |  Size: 728 B