概要
Oat は、 超軽量 かつ 依存関係ゼロ のHTML+CSS UIコンポーネントライブラリ。 約8KB (CSS 6KB、JS 2.2KB、min+gzip)で、 フレームワークやビルド不要。 セマンティックタグ や属性を直接スタイリングし、 クラス不要。 WebComponents による動的要素も最小限。 長期的に安定利用 できる、 シンプル かつ 標準準拠 な設計。
Oat: 超軽量セマンティックUIコンポーネントライブラリ
- HTML+CSS ベースの UIコンポーネントライブラリ
- 依存関係ゼロ、他のJS/CSSフレームワーク不要
- CSS 6KB、 JS 2.2KB (minified+gzip時)という極小サイズ
- フレームワーク、ビルド、開発環境構築不要
- CSSファイルとJSファイル を読み込むだけの簡単導入
- セマンティックなHTMLタグ や 属性 に直接スタイル適用
- 例:
<button>、<input>、<dialog>、role="button"など
- 例:
- クラス名付与不要、 マークアップのクラス汚染防止
- セマンティックHTML と ARIAロール を多用・強制
- キーボードナビゲーション 完全対応
- WebComponents による動的コンポーネントも一部採用
- JavaScript は最小限
- CSS変数 によるテーマカスタマイズが容易
data-theme="dark"をbodyに指定するだけで ダークテーマ 利用可能
- shadcn aesthetic の影響を受けたデザイン
なぜOatなのか
- 既存のUIライブラリやフレームワーク の 複雑さ・肥大化 ・ 依存地獄 への強い不満
- Node.jsエコシステム による ロックイン や 破壊的変更 からの解放
- バニラCSS/JS のみで構成されるため 長期運用が可能
- シンプル・最小限・標準準拠 を徹底した設計思想
- 自分自身のプロジェクト で長期利用できるUIライブラリを目指す
- 同様の悩み を持つ開発者への共有目的
主な特徴まとめ
- 完全スタンドアロン、 外部依存ゼロ
- セマンティックHTML + ARIA 強制
- クラス不要、 クリーンなマークアップ
- テーマ切り替え ・カスタマイズ容易
- 最小限のJS、 WebComponents 対応
- 現代的かつシンプルなデザイン
- 長期利用に最適 なUI基盤