7 foundations, 28 components, 4 charts — driven by one shared registry.
Foundations
ColorNeutral ramp + one accent per product, remapped by data-nx-product; status and chart palettes are fixed.
TypographySystem-sans app type scale plus a monospace layer for technical labels.
Space & radiusA density-aware spacing/radius scale; row-icon and a few chip sizes are documented off-grid exceptions.
MotionOne easing curve for kit transitions plus the mark's draw-on animation; everything honors prefers-reduced-motion.
ElevationFlat by default — hierarchy comes from hairline borders and accent tints; the one sanctioned shadow is for overlays.
TokensTwo-layer token model — RGB channel vars are the source of truth, rgb() aliases are the convenience layer consumers read.
Mark & lockupThe nx ligature — a constant ink n crossed by a per-product accent x — plus the lockup that pairs it with the product prefix.
Core
ButtonPrimary action control with primary/ghost/danger variants and a small size cut.
Preview
Icon buttonSquare icon-only control for compact actions (close, more, toggle) — no dedicated NxKit wrapper, apply the class directly.
CardBordered, clipped surface — the standard container for a themed panel.
Product headerTinted header bar holding the product lockup and an optional avatar.
KPI tileTinted stat tile for one headline number + label.
List rowIcon + title/sub + optional status pill, the atomic row of a list or table-like feed.
Preview
NKNordküste — window clean09:30 · A. BergerOn site
Status pillSmall accent chip for a short state or count, usually trailing a list row.
FieldLabelled text input with hint/error wiring and an accent focus ring.
TabsRoving-tabindex tab strip with an accent active indicator.
AvatarCircular accent-filled initials badge.
Divider1px hairline rule for separating stacked content within a panel.
CheckboxCustom-box checkbox with checked/indeterminate/invalid/disabled states.
RadioCustom-dot radio button, grouped by a shared name.
SwitchBinary on/off track-and-knob control, RTL-aware knob travel.
SelectStyled native <select> with a caret icon and accent focus ring.
Preview
TextareaMulti-line field input, vertical-resize only, reuses the Field's input tokens.
Data
TableBordered data table with a tinted header, row hover, and empty/loading/selected states.
Preview
| Job | Customer | Status | Value |
|---|
| #4412 | Nordküste — window clean | On site | €380 |
Feedback
BadgeSmall solid or soft label for a fixed category or count, with status colour variants.
Preview
Default Soft Live Beta Down
AlertTinted banner with a coloured leading bar + icon for info/success/warning/danger messages.
Preview
Information: ⓘHeads up
Your trial ends in 5 days.
ProgressDeterminate or indeterminate accent bar on a tinted track.
SkeletonShimmering placeholder block for content that hasn't loaded yet.
SpinnerSmall rotating ring for an inline or button-embedded loading indicator.
TooltipHover/focus popover label, dismissible with Escape, WCAG 1.4.13-compliant.
Preview
Tooltips invert per theme
Empty stateCentered icon + title + copy + optional action for a list/table with no data yet.
Preview
▤Keine JobsErstelle deinen ersten Job, um loszulegen.
Overlays
DrawerEdge-docked panel with scrim, focus trap, and Esc-to-close — inline-start/end aware.
ModalCentered confirmation/detail dialog with scrim, focus trap, and Esc-to-close.
Navigation
BreadcrumbHorizontal trail of ancestor links ending in the current page.
MenuPopover action list with roving-tabindex keyboard navigation and a danger item variant.
Charts
BarSingle-series weekly volume, thin rounded-end bars on a recessive grid.
Line & areaTwo-series session trend, line + soft area fill under the primary series.
DonutParts-of-a-whole traffic-source split with a centered total.
Stat tilesRow of headline KPI cards with a signed delta and up/down/good/bad framing.