Skip to content

Verge

Verge es el lenguaje visual del Koder Design System — el mapa cerrado de tokens (color, forma, espacio, sombra, tipografía) que toda UI Koder consume. v0 refleja GNOME Adwaita 1:1; la divergencia es incremental, guiada por el feedback del owner sobre widgets renderizados.

Verge spec (verge.kmd) → · Live preset preview →

Color

TokenLightDarkUse
--accent#3584E4inherits lightPrimary action color (buttons, focus rings, links)
--accent-strong#1c71d8inherits lightHover state of accent
--accent-on#FFFFFFinherits lightText/icon color on top of accent surfaces
--bg#FAFAFA#242424Page canvas — the lowest surface in the elevation stack
--surface#FFFFFF#303030Card / form / panel surface (1 step above canvas)
--surface-2#424242Nested / elevated surface (2 steps above canvas)
--on-surface#2e3436#FFFFFFBody text and primary glyphs on surfaces
--label-color#5e6772#ccccccSecondary text — labels, helpers, captions
--btn-secondary-bg#3a3a3aBackground of secondary buttons (dark mode)
--btn-secondary-fg#FFFFFFText color of secondary buttons (dark mode)
--btn-secondary-hover#4a4a4aBackground of secondary buttons on hover (dark mode)

Shape & border

TokenLightDarkUse
--radius-sm4pxinherits lightSmall radius — chip, badge, tag corners
--radius-md6pxinherits lightMedium radius — input, card, panel corners
--radius-lg8pxinherits lightLarge radius — dialog, sheet, drawer corners
--radius-btn6pxinherits lightButton corner radius (Verge owner decision: minimally rounded squares)
--input-border1px solid #c0c0c01px solid #1b1b1bInput and field border stroke
--btn-secondary-border1px solid #c0c0c01px solid #1b1b1bSecondary button border stroke

Spacing & padding

TokenLightDarkUse
--pad-y8pxinherits lightVertical padding inside inputs and buttons
--pad-x12pxinherits lightHorizontal padding inside inputs and buttons
--gap-field10pxinherits lightGap between adjacent fields in a form
--gap-title14pxinherits lightGap between a title and its content
--pad-form18pxinherits lightInternal padding of a form card

Elevation & shadow

TokenLightDarkUse
--shadow-form0 0 0 1px rgba(0,0,0,0.1)0 0 0 1px rgba(0,0,0,0.5)Drop shadow / outline of a form card

Font stack

TokenLightDarkUse
--fontAa'Cabin', 'Cantarell', 'Inter', sans-serifinherits lightBody font stack — Cabin / Cantarell / Inter fallbacks

Modos de densidad

Tres densidades canónicas a nivel de página escalan el espaciado de Verge y los mínimos de los componentes de forma uniforme. Compacto = −20 %, Cómodo = +20 %. Prueba la cascada en vivo más abajo — las tres columnas delimitan su propia data-density para mostrar el mismo trío de botones en cada ritmo.

Compacto

Predeterminado

Cómodo

specs/themes/density.kmd

How divergence works

Verge starts as GNOME Adwaita 1:1; tokens diverge gradually as Koder products evolve. The flow:

  1. Owner renders a form or widget with current Verge tokens in a Koder product
  2. Owner visually evaluates and identifies what should change ("that button is too wide", "input border looks too thin")
  3. AI maps the request to the correct token (`--accent`, `--radius-btn`, `--pad-y`, etc.) and updates `tools/design-gen/assets/css/presets.css` + `specs/themes/verge.kmd` §R4
  4. When several divergences accumulate, a Verge v(N+1) release is cut — changelog and migration guide ship alongside