Source: Astryx

What it is

  • A React design system from Meta, released as open source.
  • Licence: MIT, copyright 2026 Meta Platforms.
  • The project calls itself beta. Its npm page shows the current version.
  • Built on React 19 or later (a hard requirement) and StyleX. You import CSS that's already built, so you don't have to adopt StyleX.
  • Packaging, as npm packages:
    • @astryxdesign/core: the components, themes and utilities;
    • @astryxdesign/cli: docs lookup, templates, scaffolding, themes and code changes;
    • theme packages such as @astryxdesign/theme-neutral;
    • @astryxdesign/richtext: a rich text editor and viewer.
  • 150+ components, seven themes, dark mode, page templates, a CLI and an MCP server.
  • Docs at astryx.atmeta.com, plus a Storybook and a sandbox.
  • Its README says it grew inside Meta over eight years and powers 13,000+ apps there.

How to get it

  • npm install @astryxdesign/core @astryxdesign/theme-neutral @stylexjs/stylex, plus the CLI as a dev dependency.
  • Import three stylesheets in order: reset.css, astryx.css, the theme's theme.css. Then wrap the app in a theme.
  • Recipes exist for Next.js (with or without Tailwind or StyleX) and Vite.
  • With no bundler, load it from esm.sh through an import map. npx @astryxdesign/cli template --cdn writes a starter page.

Cautions

  • It's in beta.
  • Charts and the native (iOS, Android, macOS, Windows) packages are experimental and published only as canary builds.
  • The experimental lab package: the README says it isn't published; its package file says it is, as canary.
  • packages/README.md lists different themes from the main README. It looks out of date.
  • Always use the scoped CLI name. The bare astryx package on npm is unrelated.
  • Its layered pop-ups need recent browsers (CSS anchor positioning, Baseline 2026). In older supported browsers, pop-ups open but aren't positioned.
  • With server rendering, runtime themes flash on load. Use built themes.
  • Themes name a font but don't load it.
  • The README calls all components accessible. The contributing guide says automated checks cover only part of it, and keyboard, focus and screen-reader behaviour need checking by hand.
  • Its claims about use inside Meta come from the README, with no evidence shown.
  • Nothing was installed or run when it was read. Our build did try it: see Tool: Astryx theming.

Cards it supplies

  • Tool: Astryx forms.
  • Tool: Astryx theming.
  • Tool: Astryx for agents (CLI and MCP server).

Leads onward

Leads here