gt-ui

Design system rules for the GT UI component library (packages/ui). Use when writing or reviewing UI components, styling, colors, buttons, typography, dark mode, or shadcn/ui configuration.

Category
General Translation
Skill
255 of 261
Source
gt-cloud

Strict design rules for the shared UI component library (packages/ui), new dashboard (apps/dashboard), and landing page (apps/landing). These are non-negotiable — follow them for every UI change.

Quick Reference

AreaRule
Border radiusrounded-md for everything (see exceptions (./border-radius.md#exceptions))
ColorsBlack/white base + 5 approved colors only. Use semantic tokens, never raw values.
TypographyGeist / Geist Mono. Min text-sm. No thin weights. Always antialiased.
ButtonsAlways use Button component. rainbow only for single most important CTA per page.
Sibling spacingLayout parents own sibling spacing with gap-* or space-*; avoid repeated child margins.
Surface nestingDo not nest Cards; use spacing and headings to create hierarchy within a surface.
Dark modeSemantic tokens, not dark: overrides. No useTheme() for conditional markup.
shadcn/uiradix-vega preset. Override via CSS variables, not editing base output.

Translation Wrapping

For JSX UI copy, prefer one <T> around the largest static JSX structure that makes sense instead of wrapping only text nodes. <T> can wrap elements and components, which gives translations more useful markup context.

<T>
  <Button>Save changes</Button>
</T>

Do not nest <T> components. Do not put raw variables, ternaries, or mapped expressions directly inside <T>; use GT variable, number, date, plural, or branch components for dynamic content. <T> does not translate user-facing props passed to child components, so translate those props with gt().

Detailed Guidance

  • Border Radius (./border-radius.md)
  • Colors (./colors.md)
  • Typography (./typography.md)
  • Buttons (./buttons.md)
  • Sibling Spacing (./sibling-spacing.md)
  • Nested Surfaces (./nested-surfaces.md)
  • Dark Mode (./dark-mode.md)
  • shadcn/ui Preset (./shadcn-preset.md)