Neba UI
用來組建應用程式介面的 React 元件庫。按鈕、輸入欄、選單、對話框、表格與圖表共用同一組屬性,交付時即具備無障礙支援,不需主題檔就能跟隨深色模式。
關於這個專案
Neba UI 是用來組建應用程式介面的 React 元件庫。按鈕與輸入欄、選單與對話框、表格與分頁、圖表、進度與通知——真正的產品需要的元件都在其中,而且樣式已經定好、無障礙支援已經具備、彼此之間已經協調。介面是被組裝出來的,而不是被重新設計一遍。它也備齊了 AI 代理介面需要的東西——提示詞輸入欄、串流文字、工具呼叫、核准請求、推理面板與步驟清單——位於 neba/a2ui 的 A2UI 算繪器則把代理以 JSON 描述的畫面轉成 Neba 元件。
每個元件都取自同一套詞彙。size、color、variant、density 與 elevation 在任何地方意義相同,所以中型控制項在任何元件上都是同樣的高度,主色在任何地方都是同一個顏色。角色、標籤、焦點管理與鍵盤操作住在元件裡面,而不是事後加上;深色模式不必寫任何東西就跟隨系統。它的外觀是一門設計語言而非一份主題檔:帶細邊的半透明表面、一種統一的動態,以及必須主動要求才會出現的陰影。
安裝是一個套件加一行 CSS。根層沒有 Provider,沒有要拼裝的主題物件,也沒有設定檔。這個套件僅提供 ESM,附帶 TypeScript 型別定義,而且是真正能搖樹優化的——每個元件都編譯成自己的模組,匯入一個按鈕大約就只付一個按鈕的代價。它執行在 React 18 或 19 上,帶兩個執行階段相依套件;A2UI 算繪器另外帶來三個選用的同層相依,從不匯入它的專案也就從不解析它們。每個元件的文件配的都是真的會動的範例,不是螢幕截圖。
功能
文件網站
TypeScript 型別
多語言支援
經測試驗證
內建無障礙支援
深色模式
支援搖樹優化
