meowerse_
docs menu

colours

Graphite surfaces and one green. Dark is the default and follows the system; light is "day paper". Green marks the one primary action, focus, and live/ok, and is never body text on light (use accent there).

semantic tokens

tokencss variabledarklight
bg--c-bg#0a0a0b#e9e8e4
bgElev--c-bg-elev#111113#f1f0ec
surface--c-surface#151517#dfded9
surfaceRaised--c-surface-raised#1a1a1d#f7f6f3
line--c-line#232326#cfcec8
lineStrong--c-line-strong#404044#a9a8a2
lineInput--c-line-input#6a6a70#7a7973
fg--c-fg#ededeb#1a1a1c
fgMuted--c-fg-muted#b3b3af#46464a
fgSubtle--c-fg-subtle#8c8c88#5e5e5b
accent--c-accent#00ff82#0a6e3c
accentFill--c-accent-fill#00ff82#00ff82
onAccent--c-on-accent#06170d#06170d
warn--c-warn#ffb454#8a5200
danger--c-danger#ff6b63#b42318
onDanger--c-on-danger#1a0605#ffffff
dangerTint--c-danger-tint#2a1513#f6dcd8
ok--c-ok#3ddc84#11652f
info--c-info#7cc4ff#1d5fa8
focus--c-focus#00ff82#0a6e3c
scrim--c-scrimrgba(0, 0, 0, 0.6)rgba(20, 20, 22, 0.4)

contrast

Every pair the components put text or a boundary on, checked in both themes by the token test. AA needs 4.5:1 for text and 3:1 for the focus ring and input borders.

textonthemerationeeds
fgbgdark

ok: 16.88:1

4.5:1
fgbglight

ok: 14.17:1

4.5:1
fgbgElevdark

ok: 16.09:1

4.5:1
fgbgElevlight

ok: 15.24:1

4.5:1
fgsurfacedark

ok: 15.56:1

4.5:1
fgsurfacelight

ok: 12.90:1

4.5:1
fgsurfaceRaiseddark

ok: 14.81:1

4.5:1
fgsurfaceRaisedlight

ok: 16.08:1

4.5:1
fgMutedbgdark

ok: 9.41:1

4.5:1
fgMutedbglight

ok: 7.66:1

4.5:1
fgMutedsurfacedark

ok: 8.67:1

4.5:1
fgMutedsurfacelight

ok: 6.97:1

4.5:1
fgMutedbgElevdark

ok: 8.97:1

4.5:1
fgMutedbgElevlight

ok: 8.24:1

4.5:1
fgMutedsurfaceRaiseddark

ok: 8.26:1

4.5:1
fgMutedsurfaceRaisedlight

ok: 8.69:1

4.5:1
fgSubtlebgdark

ok: 5.86:1

4.5:1
fgSubtlebglight

ok: 5.31:1

4.5:1
fgSubtlesurfacedark

ok: 5.40:1

4.5:1
fgSubtlesurfacelight

ok: 4.83:1

4.5:1
accentbgdark

ok: 14.73:1

4.5:1
accentbglight

ok: 5.18:1

4.5:1
accentsurfacedark

ok: 13.57:1

4.5:1
accentsurfacelight

ok: 4.71:1

4.5:1
onAccentaccentFilldark

ok: 13.75:1

4.5:1
onAccentaccentFilllight

ok: 13.75:1

4.5:1
dangerbgdark

ok: 7.10:1

4.5:1
dangerbglight

ok: 5.36:1

4.5:1
dangerbgElevdark

ok: 6.77:1

4.5:1
dangerbgElevlight

ok: 5.77:1

4.5:1
dangersurfacedark

ok: 6.54:1

4.5:1
dangersurfacelight

ok: 4.88:1

4.5:1
dangersurfaceRaiseddark

ok: 6.23:1

4.5:1
dangersurfaceRaisedlight

ok: 6.08:1

4.5:1
dangerdangerTintdark

ok: 6.20:1

4.5:1
dangerdangerTintlight

ok: 5.06:1

4.5:1
onDangerdangerdark

ok: 7.03:1

4.5:1
onDangerdangerlight

ok: 6.57:1

4.5:1
okbgdark

ok: 11.09:1

4.5:1
okbglight

ok: 5.85:1

4.5:1
oksurfacedark

ok: 10.22:1

4.5:1
oksurfacelight

ok: 5.33:1

4.5:1
infobgdark

ok: 10.55:1

4.5:1
infobglight

ok: 5.26:1

4.5:1
warnbgdark

ok: 11.22:1

4.5:1
warnbglight

ok: 5.21:1

4.5:1
focusbgdark

ok: 14.73:1

3:1
focusbglight

ok: 5.18:1

3:1
lineInputbgdark

ok: 3.68:1

3:1
lineInputbglight

ok: 3.56:1

3:1
lineInputbgElevdark

ok: 3.51:1

3:1
lineInputbgElevlight

ok: 3.83:1

3:1

brand primitives

Raw colours behind the semantic tokens. Use the semantic tokens in components; these are listed for reference (the cat colours feed Cat3D).

  • green #00ff82
  • greenInk #0a6e3c
  • amber #ffb454
  • red #ff5f56
  • cat #14995a
  • catEdge #63d396

terminal (ansi) palette

For glyphs inside dark code and terminal surfaces only. Several of these fail contrast on light backgrounds, so StatusLine and every other component use the theme tokens instead.

  • --ansi-bg #050506
  • --ansi-fg #d8d8d6
  • --ansi-muted #a3a39f
  • --ansi-dim #7b7b77
  • --ansi-white #f2f2f0
  • --ansi-black #0a0a0b
  • --ansi-red #ff6b63
  • --ansi-green #00ff82
  • --ansi-amber #ffb454
  • --ansi-blue #7cb2ff
  • --ansi-magenta #c792ea
  • --ansi-cyan #7fdbca