跳到主要內容
AI News HubLIVE
站內改寫2 分鐘閱讀

Meta 開源 Astryx:一個面向智慧體的 React 設計系統,包含 150+ 無障礙元件、七種主題和 CLI

文章摘要

Meta 開源了其內部使用了八年的 React 設計系統 Astryx,覆蓋 13,000+ 應用。它提供 150+ 無障礙元件、七種主題、深色模式以及一個面向智慧體的 CLI,採用 MIT 許可證,要求 React 19+。

來源MarkTechPost作者: Michal Sutter
Meta 開源 Astryx:一個面向智慧體的 React 設計系統,包含 150+ 無障礙元件、七種主題和 CLI
回報錯誤

更正管道尚未開通,可先複製下方文章資訊留存。

查看更正說明
直接讀正文

Astryx 是 Meta(原 Facebook)於近日開源的一款設計系統,目前處於 Beta 階段。它並非全新專案,而是 Meta 內部在過去八年中逐步打磨而成,已成為該公司最大、使用最廣的設計系統,被 13,000 多個應用採用。該系統基於 React 和 StyleX 構建,提供了 150 多個無障礙元件(官方文件顯示已超過 160 個)、品牌級主題定製、深色模式、可直接使用的模板以及命令列工具(CLI),所有功能打包在一起。開發者無需額外配置構建外掛或引入樣式庫,只需匯入預構建的 CSS 並使用型別化的 React 元件即可開始使用。

Astryx 的核心設計思路是分離行為與外觀。大多數設計系統迫使開發者在“使用大型公司系統導致應用外觀同質化”和“使用可複製貼上元件導致專案碎片化、缺乏可維護性”之間做出選擇。Astryx 透過將行為、無障礙性和質量控制放在系統層面統一管理,而外觀則透過 CSS 自定義屬性(令牌)進行主題定製來解決這一矛盾。設計師無需修改元件原始碼即可透過覆蓋令牌值重新定義主題,支援顏色、排版、圓角、動效等維度的調整。

系統的架構分為三層:基礎層(Foundations)提供排版、顏色、佈局和無障礙性等基礎元語;元件層(Components)包含 150 多個可複用、TypeScript 全支援的構建塊;模式層(Patterns)提供了經過實戰檢驗的通用流程解決方案,如表格頁面、詳情佈局、表單嚮導和導航等。值得關注的兩個設計決策是:元件支援任意層次的組合,而不是封閉在頂層 API 之後;以及“swizzle”功能允許將元件的完整原始碼彈出到專案中,以便開發者完全掌控。

Meta 強調 Astryx 是為智慧體(AI Agent)時代設計的。隨著程式碼生成越來越多地由 AI 完成,設計系統需要從根本上重新思考。Astryx 的 API、約定、文件和 CLI 從始自終針對人和 AI 兩種使用者協同設計,使得人類開發者與 AI 助手能夠基於同一套參考體系進行構建。CLI(@astryxdesign/cli)支援列出和生成模板、列印完整元件文件、生成和構建主題、執行程式碼遷移(codemod),並透過命令列或 MCP(Model Context Protocol)提供機器可讀的文件。

部署方面,Astryx 要求 React 和 react-dom 版本 ≥ 19.0.0,以及 StyleX 作為對等依賴。它自帶預構建 CSS,因此無需配置 PostCSS 或 Babel。支援的環境包括 Next.js(配合 Tailwind 或 StyleX)、Vite,以及透過 unpkg 或 jsDelivr 的 CDN 無構建路徑。目前專案以 MIT 許可證釋出,可在 GitHub 上獲取。由於仍處於 Beta,官方建議在評估後用於非生產環境。

展開要點與分析

文章情報

工程師入門

要點

  • Astryx 是 Meta 最大的內部設計系統,現以 MIT 許可證開源。
  • 包含 150+ 無障礙 React 元件、七種主題、深色模式、模板和 CLI。
  • 行為和無障礙性與視覺主題分離,透過 CSS 令牌定製。
  • 為人機協作設計:統一 API、文件和 CLI(含 MCP 支援)。

要點與分析由自動化流程生成,可能有誤,請結合原始來源核實。