@gomani/savanna
v0.11.0
Published
The Savanna design system for Gomani: zero-runtime CSS + design tokens (association, not dependency).
Maintainers
Readme
@gomani/savanna
The Savanna design system for Gomani, as zero-runtime CSS + design tokens — association, not a
dependency. An app links the generated stylesheet and uses the sv-* classes; nothing ships to the
client but CSS. Pre-wired as the default UI (create-gomani scaffolds it), and fully removable.
Dark-only by law; the palette is intentional accents — emerald #00c853, gold #ffd700, clay,
bronze — against a deep teal-green base #0a1a1f.
import { savannaCss, tokens } from '@gomani/savanna';
// Write the stylesheet to your app's public/ (create-gomani does this for you):
writeFileSync('public/savanna.css', savannaCss());
tokens.color.emerald; // '#00c853' — the tokens are the source of truth<link rel="stylesheet" href="/savanna.css" />
<main class="sv-container">
<p class="sv-kicker">Built with Gomani</p>
<h1>Fast by default.</h1>
<button class="sv-btn sv-btn--primary">Go</button>
</main>tokens/tokenVars— the design tokens (colour, font, space, radius, shadow) and their--sv-<group>-<key>custom-property names. Override and re-generate for a custom theme.savannaCss(options?)— the full stylesheet::roottokens + a dark base reset + thesv-*component classes (sv-container,sv-btn,sv-card,sv-pill,sv-input,sv-rule— a woven Kente divider, and a Savanna-styled skip link). Togglebase/componentsoff, or pass customtokens.savannaTokensCss()— just the:roottoken block, for apps that want the tokens with their own component styles.
Zero JavaScript. It is CSS.
