Review lang
Design system
HumanOS prototype — tokens, primitives, shell pieces, patterns

HumanOS design system

Single source of truth for every brand token, primitive, and shell piece used in the prototype. Use this page to look up a color variable, find a component variant, or verify how a pattern is supposed to look. Click any color swatch to copy its CSS variable name.

Color tokens

Defined in lib/tokens/tokens.css.

Electric (primary)
Teal
Deep
Purple
Orange
Gold
Green
Red
Ink
Semantic aliases
Chrome (theme-aware)

Use these for sidebar / topbar / cards-inside-the-shell so the platform-admin dark mode (.theme-platform) flips them automatically. Defaults match the existing light look — using them on school / teacher / student pages produces no visual change.

Typography

Display = Outfit. Body = Urbanist. Both via next/font.

The quick brown fox
Display 5xl extrabold
The quick brown fox
Display 4xl bold
The quick brown fox
Display 3xl bold
The quick brown fox
Display 2xl bold
The quick brown fox
Display xl semibold
The quick brown fox
Body base regular
The quick brown fox
Body sm regular
The quick brown fox
Body xs medium
The quick brown fox
Eyebrow 10px uppercase

Persona gradients

Used on hero cards, persona avatars, and the login brand panel. Mirror these in any new persona-themed surface.

Platform Admin
from-ink-700 via-ink-900 to-deep-900
Headmaster (school)
from-electric-700 via-electric-900 to-ink-900
Teacher
from-gold-500 via-orange-500 to-orange-700
Student
from-purple-500 via-purple-700 to-electric-700

Iconography

Phosphor icons. Use weight="regular" for defaults, weight="fill" for accents and brand marks. Sizes: 14 (inline), 16 (default), 20 (toolbars), 24 (page-level).

Lightbulb
House
UsersThree
ChalkboardTeacher
GraduationCap
Books
BookOpen
CalendarCheck
Sparkle
ShieldCheck
ClipboardText
Medal
MapTrifold
ArrowUUpLeft

Primitives

Every variant + state of components in components/ui/.

Buttons

Inputs · Checkbox · Switch

Remember me
Checked
Notifications off
Notifications on

Badges — every variant

AnwesendVerspätetFehlt2. HalbjahrSchulleitungJETZT

Tabs (underline + pill)

Default underline tabs.

Avatars — sizes + status

MKAWLMKR

Toast tones + Dialog

Shell pieces

The chrome that wraps every persona shell. Each is shown in isolation here; in the app they're composed inside components/shell/shell.tsx and globally in app/layout.tsx.

Sidebar
Source: components/shell/sidebar.tsx. Persona-aware nav. To preview live, sign in as any persona via the demo console and look at the left rail.
Topbar
Source: components/shell/topbar.tsx. Search + notifications + user menu.
LangToggle (always visible top-right)
Source: components/shell/lang-toggle.tsx. Prototype-only review-language switcher.
DemoConsoleChip (visible on persona shells; hidden on /, /login, etc.)
Source: components/shell/demo-console-chip.tsx. Returns to the demo console mid-demo. Sits below LangToggle.

Patterns

Recurring compositions used across the prototype.

Status row (badge in list)

LMLina MüllerAnwesend
TBTobias BauerVerspätet
MKMira KhanFehlt

Card with eyebrow + title

Heute · Mathematik 8A
Lineare Gleichungen
Doppelstunde · Raum 204 · 24 Schüler:innen

Empty state

Noch keine Materialien
Lade dein erstes Dokument hoch oder importiere aus der Bibliothek.

Persona accent block

Streak
12 Tage
Mach weiter — du bist in einer Reihe!