😱 ScreamingFace
brand & style Β· honest-AGI initiative Β· v1.0

The look, the rules, the receipts.

This is the canonical source for how the ScreamingFace honest-AGI work looks and reads. The audience is policy and science leadership, not only developers, so the surface has to earn trust at a glance. One system, applied everywhere.

the direction Infra-retro-modern. The precision of a developer-infrastructure tool with a terminal-retro backbone: monospace structure, hairline rules, square corners, true white and true dark. Color is rationed. It appears only to help the reader follow the story. Retro, not messy. We're arguing that AI should be honest; the surface should feel honest too.

principles

not vibe-coded

The fastest way to look auto-generated in 2026 is to accept the defaults. These are hard rules, not suggestions.

never

  • Gradients β€” especially blueβ†’purple. Flat fills only.
  • Rounded corners. Radius is 0.
  • Drop shadows, glows, glassmorphism, blur.
  • Gradient or glowing text.
  • Emoji as bullets or ✨ decoration.
  • Purple. Any purple.
  • Hero + three feature cards + bento grid.
  • The default shadcn / "clean modern SaaS" look.
  • Lorem, fake logos, vanity metrics, undefined acronyms.

instead

  • Flat color, hairline borders, square edges.
  • Depth from spacing and rules, not shadow.
  • One accent, used only for the story.
  • Monospace structure; real type hierarchy.
  • The 😱 mark, once β€” never as decoration.
  • Left-aligned, document-like, generous space.
  • Real data, real labels, real receipts.
  • Motion only where it clarifies, never to impress.
  • Deliberate choices you could defend out loud.

logo

The mark is the screaming face, 😱. It carries the whole identity: screaming because the results make you scream, the people's emoji because this is public infrastructure, not a corporate logo. Use the system emoji as it ships. The animated mark earns its place in moments that deserve it (a result landing, a long run completing). Never recolor it, box it, or redraw it.

😱static mark
😱animated · shake
😱animated · wave (the scream)
😱 ScreamingFacewordmark lockup · rubik

Static 😱 powers the favicon and the rail. The animated mark is the system 😱 emoji shaken in CSS (.scream-shake) β€” no raster, scales to any size, and holds still under prefers-reduced-motion. Lockup sets the wordmark in Rubik, mark first.

color

Three layers, rendered live from tokens.json so this page never drifts from the system. Semantic roles are what components reference. Primitives are the raw palette they point at. Categorical is for visuals that compare many things at once. Toggle the theme (top right) to see both modes.

semantic roles

Every component uses these, never raw hex. The page is near-monochrome on purpose. Only gain (the model can read the source, correct, SOTA) and blind (guessing without it) carry meaning. mark is the 😱 amber spark for UI, never for data.

tokenlightdark

primitives

The raw palette. Semantic roles resolve to these. Components should not reach past the semantic layer to a primitive directly.

categorical Β· data series

Eight distinguishable, colorblind-aware mid-tones for comparing many series in one chart (models, weeks, configurations). Assign in order. These read on both themes and never use purple. They are for data only, kept separate from the semantic gain and blind colors.

the ensemble gradient

The ScreamingFace ensemble is always #1 β€” so the top of the board isn't flagged with a green badge, it is the brand. The signature gold→blue gradient (--gain-grad, sampled straight from the 😱 mark) fills the leading row, and only the leading row. It is the single chromatic gradient in the system; everywhere else stays flat (see the anti-rules). The solid --gain gold carries the same “correct / SOTA” meaning anywhere a gradient can't go β€” text, marks, hairlines.

Hover the bar (or the #1 row below) β€” the gradient flows continuously on hover, static otherwise. Seamless loop, and it respects prefers-reduced-motion.

😱 ScreamingFace ensemble88.4%
best single model84.2%
next model82.0%

type

Headlines are EB Garamond, a classic old-style serif. It reads as timeless and credible, not a contemporary or "tech" serif (those, like a monospace headline, now read as modern and AI-generated). Everything else is IBM Plex: Plex Sans for prose and dense small text, Plex Mono for data, labels, code, and the rail. The wordmark alone uses Rubik, for OpenMined brand-family consistency. Few roles on purpose. Rendered from the font tokens below.

tokenfamilyused for

scale

Seven sizes, each with one job. Everything on every page maps to one of these (rendered from the text tokens).

tokensizeused for

voice

Per OpenMined's content guidelines: concise, credible, helpful. We write to be useful, not to sound impressive. Two archetypes β€” the Innovator (visionary, alleviates fear of the unknown) and the Citizen (integrity, fairness, values over profit).

dodon't
Lead with the outcome, then how it worksOverclaim or speculate
Show receipts β€” numbers, links, namesBuzzwords / corporate jargon
Plain language; define acronyms onceFear-based messaging
Center the reader and the outcomeCenter ourselves

Titles must pass four tests: can you visualize it, is it falsifiable, could anyone else say it (if yes, too generic), is it true. Draft 5–10 before choosing.

the work

The flagship is the demo page Max would actually walk through. The three lettered pages are the visualization explorations behind it.

pagewhat
demo β†’honest-agi-live β€” the full Max demo page
AThe Climb β€” accuracy across the 4 stages
BPareto β€” accuracy Γ— cost frontier
CBefore / After β€” the one big delta
😱 ScreamingFace β€” brand v1.0 brand.screamingface.ai Β· OpenMined Β· internal