Canteen · Design System · v0.1

Issued, not opened.

The single reference for Canteen's visual language: tokens, type, the coin, components, motion, and voice. Obsidian and brass, held to a service member's standards. This page is built from the same theme the product uses.

Foundations · Color

Obsidian & brass

Never pure black or shiny yellow. A cool obsidian ground. Brass spent sparingly, on engraving, a thin rule, or the single most important action on a screen. Beside it, three semantic colours that each answer who is acting: green when something is confirmed, blue for what belongs to the service rather than to us, and red for something being done to a member. None of them decorates. A screen that needs no state shows none of them.

Ground
Obsidian
--color-obsidian
App ground, deepest surface
Gunmetal
--color-gunmetal
Raised surfaces, cards
Graphite
--color-graphite
Insets, tracks, tiles
Line
--color-line
Hairline borders & dividers
Brass. The accent
Brass
--color-brass
The accent. One per screen
Brass Bright
--color-brass-bright
Highlights, gradient top
Brass Deep
--color-brass-deep
Engraving, chip borders
Text
Bone
--color-bone
Primary text on dark
Slate
--color-slateink
Secondary / muted text
Semantic
Good
--color-good
Confirmed. Verified, credited, crossed off
Service
--color-service
The military's own: DFAS, branch, the law
Danger
--color-danger
Harm, drawn. Marks and strokes, never type
Danger Bright
--color-danger-bright
The same, as words. 4.9:1 on obsidian
Foundations · Typography

Three roles

A confident display, a quiet body, and a monospace "readout" for money, rank, and technical labels.

Display · 700 · -3%
The first bank you're issued.
Title · 700 · -1%
Your pay, the day you earn it.
Body · 400
From your first paycheck to your last formation.
Data · mono
$1,248.30 · E-3 · MMXXVI
Foundations · Spacing & radius

Rhythm

xs · 4px
sm · 8px
md · 16px
lg · 24px
xl · 32px
xxl · 48px
6 · sm
12 · md
20 · lg
pill

Buttons are full pills, the native language of iOS 26 & Material 3. Shape no longer encodes role, so emphasis does: solid brass = primary, outline = secondary, small mono chip = state.

Signature · The wordmark

Stencilled, not lettered

The name is set in the same monospace readout that carries money and rank: caps, brass, wide tracking. Nothing is drawn for it, because nothing on issued kit is. Tracking is 0.34em at every size - that spacing is the mark, and it sits above the 0.14–0.28em band the eyebrows and rails use so the wordmark outranks the labels it shares a typeface with.

Wordmark · nav 15px · footer 13px · bone
CanteenCanteenCanteen

It is brass, so it counts against the one accent a screen gets. On a page that needs its brass elsewhere, pass tone="bone" and leave the brass to the action.

Signature · The challenge coin

Minted, not downloaded

The hero of the brand. In the military your gear is issued. So is your bank. Rank chevrons, reeded edge, a slow catch-the-light sheen. Never any real branch insignia.

CANTEEN · EST · MMXXVI
CANTEEN · EST · MMXXVI
CANTEEN · EST · MMXXVI
Library · Components

Components

Buttons · pills, emphasis encodes role
Chips · describe state (never 'tap me')
E-3 · U.S. Army VerifiedE-5O-1W-2
Surfaces & inputs

Draw $400 now

Money you've already earned. No fee, no interest, no waiting for the 1st and the 15th.

Legal name
Logan Meek
Principles

Lively, but disciplined

Every touch answers back; nothing fidgets. Motion confirms an action, reveals hierarchy, or celebrates something earned. It never decorates. Imagery is engraved, not photographed. Voice is earned, plain, and on the member's side. Never hype or hooah-speak. Errors explain what happened and how to fix it.

Canteen Design System · v0.1Obsidian · Brass · Bone