RSC環境でも使えるゼロランタイムで動くUIコンポーネント & CSS-in-JS の日本製ライブラリ「Kuma UI」がv2をリリース!
Kuma UI v2では、パフォーマンスだけでなく、エコシステムとの柔軟性と互換性の向上を優先する。このバージョンは、RSCのような最新技術との互換性を確保しつつ、様々なコーディングスタイルをサポートするように設計されている。
Kuma UI の今後の方向性
コンパイラは最適化ツールとしてのみ機能し、必須ではないという哲学で設計されている。@kuma-ui/coreが提供する機能は、コンパイラの最適化の有無にかかわらず使用可能になる。
ただし、技術的な制約により、css APIはコンパイラを必要とするため、その際は@kuma-ui/macroを使用する必要がある。このパッケージは、コンパイラに依存するすべての機能を一元管理し、@kuma-ui/coreの機能がコンパイラの介入なしで完全に機能することを保証する。
技術的な拡張
APIの機能性と開発者エクスペリエンスを向上させるために、大幅な改善された。
- styledとcss APIでの補間のサポート
- コンパイラに依存する機能と依存しない機能の分離
- React v19の機能との統合
ヘッドレスコンポーネントの扱い
v2では、<Box />のようなヘッドレスコンポーネントの扱いは、React Server Components (RSC)との完全な互換性を確保するために、3つの主なスタイリング戦略をサポートする。
- 静的スタイリング
- 変数の挿入
- スプレッド構文による動的なプロップ
さらに、Kuma UIコンポーネントは主にテーマでカスタマイズ可能なシンプルなHTMLタグのラッパーであることを考慮して、v2ではコンポーネントの提供を<Box />、<Stack />、<Spacer />、<Text />、<Button />の5つのコアコンポーネントに絞ることを提案している。
Kuma UI v2 RFC · kuma-ui kuma-ui · Discussion #409
Introduction Kuma UI v2 will prioritize enhancing flexibility and compatibility with the ecosystem, rather than focusing solely on performance. This version is …