Skip to content
Cindy Zhang edited this page Jun 23, 2026 · 1 revision

Astryx Wiki

Astryx is a design system for building internal tools. This wiki documents architecture decisions, design philosophy, and research that shaped the system.

Quick Links

Philosophy & Architecture

  • Astryx Philosophy — Why Astryx exists, what we learned, and the principles that emerged
  • System Architecture — Technical architecture: customization layers, tokens, AI-native design
  • Container Padding System — How containers communicate padding to bleed children (Table, Divider, Section)
  • Theming Infrastructure — Theme system internals: defineTheme, CSS custom properties, layer ordering, subcomponent overrides
  • Chart System Architecture — Data visualization architecture: correctness guarantees, composition patterns, and design choices
  • Distribution — Packages, versioning, source and dist bundles, pre-compiled CSS
  • Docsite Architecture — Next.js docsite: generated registries, .doc.mjs content pipeline, component playgrounds

Contributing

Decisions

  • API Conventions — Naming, props, composition, and styling conventions for all components
  • API Arbitration — How we resolve API design disputes with data (vibe testing)
  • Vibe Evaluation — Nightly benchmarks measuring Astryx vs alternatives
  • RSC Compatibility — Why all components declare 'use client' and what changes when pre-compiled CSS lands
  • Why StyleX — Why Astryx uses StyleX internally (and why consumers don't need it)

Hardening

Night Watch

Releasing

  • Release Process — End-to-end release workflow: changesets, codemods, version bumps, publishing
  • Distribution — Package structure, registry, and how Astryx ships to consumers

Research & Explorations

These pages capture design explorations and forward-looking research that informed Astryx decisions. They may describe features not yet implemented.

  • Research Archive — Index of historical explorations, design investigations, and early-stage proposals

Note: For component-specific documentation, see the {Name}.doc.mjs file in each component's directory under packages/core/src/. Run xds component <Name> to view formatted docs.

Clone this wiki locally