SLATE
Slate is a stylistic grammar for every Hollywood Tooling app. Native chassis. Instrument layer. Four lighting conditions, one geometry. Information set in Slate carries weight.
DESIGN PRINCIPLES
No grey text
Text is information; fading it throws it away. Solid inks only — hierarchy comes from weight and size, never from alpha.
ExampleThe rail's labels are 9px caps in solid ink, not body text at 40% white.
Gauges never lie
Every indicator reflects real state. A visible control acts now, dims with a reason, or doesn't exist. No spinners over dead work.
ExampleFixity reads verified 0 until verification has actually run — a bar without a count is a claim.
Brevity is required
Halve it, then halve it. Fragments are sentences. The control carries the verb; copy never repeats the button. No superlatives.
Example"The volume disconnected. Reconnect it and the import resumes on its own." became "Volume disconnected. Reconnect to resume."
Color enforces meaning
Color is allocated once: nominal · caution · fault · not run. Orange undoes. Red retries. No meaning, no color.
ExampleA confirmation runs green under any circumstance — success never wears tungsten.
One icon per concept
An icon names a concept — drawn once, on one grid, in one style. Zero emojis in chrome.
ExamplePrint is an enlarger. The breadcrumb arrow is drawn, never typed.
One grammar
Learn one Slate app, know them all. One type ramp, one spacing scale, one interaction grammar — undo over confirmation, focus always visible.
ExampleBase 13px · controls 28px · touch 44px · spacing 4·8·12·16·24·32·48 · focus ring 2px.
Web mirrors the Mac
Many apps live on macOS first. The web app mirrors its Mac sibling — one shell, one grammar — and can still push.
ExampleThe web toolbar, sidebar, and gauge rail map one-to-one to the Mac app's chrome.
THE SHELL
| Name | Kind | Size | Modified | Status |
|---|---|---|---|---|
| interview_cam-A_0412.mov | Video | 4.21 GB | Today, 14:02 | Ready |
| poster_key-art_v3.tif | Image | 812 MB | Today, 11:48 | Ready |
| score_mix_stem-04.wav | Audio | 96.4 MB | Yesterday | Needs review |
| contact_sheet_034.pdf | Document | 18.2 MB | Aug 22 | Ready |
| reel_rough-cut_v9.mov | Video | 9.87 GB | Aug 21 | Processing |
| caption_track_en.srt | Sidecar | 42 KB | Aug 19 | Failed |
SPECIMENS ARE EXHIBITS — CONTROLS DEMONSTRATE STATE, THEY OPERATE NO REAL LIBRARY.
CONTROLS
Buttons
A button performs its label. One primary per surface — the action the screen exists for.
Fields
A field captures one value and says what it's for. An invalid field names the fix.
Toggles & segments
A switch acts now; a checkbox sets a preference; radios pick one of a few. A segment picks one scope.
Slider
A slider picks a value from a visible range.
Drop zone
A drop zone receives files and says what happens next.
or choose a folder
Stepper
A stepper nudges a number whose range is small and known.
Token field
Tokens are typed, matched, and removable. Existing tags complete; new ones are deliberate.
INSTRUMENTS
Lamps
A lamp shows the state of one thing. Four states, allocated once.
Chips
A chip labels state inline, beside the thing it describes.
Stage track
The stage track shows position in a lifecycle.
Confidence rating
A rating shows the model's confidence. A person rules.
Gauge rail cell
A rail cell is one instrument reading — key, value, lamp.
Breadcrumb
A breadcrumb shows the path here.
Progress
Progress shows real work with its count. A bar without a count is a claim.
Identity & counts
An avatar says who. A badge counts what waits — a count is a caution: it wants a decision.
FEEDBACK
Dialog
A dialog interrupts for the one decision that can't wait. Irreversible actions only — everything else gets undo.
Empty the trash?
Removes 34 records permanently. The one action with no undo.
Toasts
A toast wears its action: orange when undo is on offer, red when retry is. A plain confirmation runs green.
Banner
A banner reports surface state, inline, with one action.
Empty state
An empty state teaches what belongs here and offers the first step.
TYPE & SPACE
Type ramp
Spacing — one scale
TOKENS
| Token | Night | Day | Safe 902 | Safe red |
|---|---|---|---|---|
| --ground | #0d0d0f | #ffffff | #16120a | #100101 |
| --ink | #f5f5f7 | #1d1d1f | #ffd6a3 | #cc1a1a |
| --ink2 | #eef0f6 | #26262c | #f5b76e | #b30000 |
| --ink3 | #d7dae2 | #3f3f47 | #dd9a4f | #800000 |
| --accent | #DE6A41 | #B34D28 | #ff9e3d | #cc1a1a |
| --nominal | #38c793 | #1e8a5c | #ecb87f | #800000 |
| --caution | #e0a63a | #9a6b12 | #e0a63a | #b30000 |
| --fault | #e2484a | #c22f31 | #ff5a47 | #cc1a1a |
| --act-undo | #DE6A41 | #B34D28 | #ffb066 | #b30000 |
| --act-retry | #f25d5f | #c22f31 | #ff5a47 | #cc1a1a |
THE WORDMARK
Sign in
The wordmark stands alone on the door. Night, always.
Sizes
Barnegat caps. The wordmark is the logo — there is no mark.
ICONS
COMPS — RULED THIS PASS
Icon style — round. Adopted.
Icon style — sharp. For the record.
Undo orange — A adopted
Retry red — A adopted
Action treatment — tinted. Adopted.
Glass — adopted, then made true
The ground is roll-sign black; the shell paints a lit wall and glass samples it. Two materials. Cards: a white film, blur, a lit top edge, a real shadow. Transients — dialogs, menus, toasts, tooltips — wear smoked glass and sit one shadow higher: the scrim keeps text legible over content a float can't predict. Banners stay in-flow. Tables and the rail stay opaque: telemetry doesn't float.
USE
<link rel="stylesheet" href="tokens.css"> <link rel="stylesheet" href="components.css"> <body class="slate"> night — the default <body class="slate day"> day <body class="slate safe902"> safe 902 — Ilford amber, >580nm <body class="slate safered"> safe red — the deep-red lamp icons: inline icons.svg once, then <svg class="icon"><use href="#i-search"/></svg>
SLATE V0.3 · HOLLYWOOD TOOLING · SET IN SLATE ITSELF · SPECIMENS ARE EXHIBITS