このプロジェクトについて
coss.com/ui(旧Origin UI)は、Cal.comの公式デザインシステムとして定義されています。このリポジトリは、TypeScriptで記述されTurborepoで管理された、複数のプロダクトとアプリケーションを含むモノレポです。
リポジトリ構成
モノレポには以下のアプリとパッケージが含まれています:
- apps/www/ — coss.comのメインウェブサイト
- apps/ui/ — coss uiコンポーネントライブラリおよびドキュメント
- apps/origin/ — 買収前のスナップショットとして保持されているレガシーなOrigin UIコンポーネント
- packages/ui/ — 共有UIコンポーネントパッケージ
- packages/typescript-config/ — TypeScript設定
- biome.json — リンティングとフォーマットのための共有Biome設定
環境変数
複数のNext.jsアプリケーションが相互にリンクしているため、ローカルでアプリ間ナビゲーションを機能させるには、各アプリに個別の.env.localファイルが必要です。READMEには、wwwアプリ(NEXT_PUBLIC_APP_URL, NEXT_PUBLIC_COSS_UI_URL)、uiアプリ(NEXT_PUBLIC_APP_URL, NEXT_PUBLIC_COSS_URL, NEXT_PUBLIC_ORIGIN_URL)、およびoriginアプリ(NEXT_PUBLIC_APP_URL, NEXT_PUBLIC_COSS_URL, NEXT_PUBLIC_COSS_UI_URL)の変数が記載されており、localhostポートは例として3000、4000、4001が指定されています。Turborepoは.env*ファイルを監視しているため、これらの変数が変更されるとキャッシュが無効になります。
開発ワークフロー
ツールチェーンには、静的型チェック用のTypeScriptと、リンティングおよびフォーマット用のBiomeが含まれています。コマンドはbunで実行し、`bun run build`および`bun run dev`ですべてをビルドまたは起動します。また、`--filter=www`、`--filter=ui`、`--filter=origin`を使用して特定のアプリのみをターゲットにできます。
coss uiの提供内容
coss uiは、Base UIの上に構築されTailwind CSSでスタイリングされた、アクセシブルで合成可能なReactコンポーネントのコレクションとして提供されており、開発者がコードをコピー&ペーストして所有できるように設計されています。READMEによると、Base UIのスタイルなしプリミティブに即利用可能なデザインシステムを適用したものであり、Cal.comが段階的に導入を計画しているコンポーネントライブラリです。開発はオープンに継続されています。
Origin UIの買収
リポジトリには、レガシーなスナップショットとしてOrigin UIコンポーネントが含まれています。これはRadixベースのshadcnスタイルコレクションであり、引き続き利用可能ですが、サポートとメンテナンスは限定的です。現在の活動は、coss uiプリミティブに基づいて構築された新しいParticlesコンポーネントに集中しています。バグ報告、機能提案、ドキュメントに関する貢献は、apps/ui/CONTRIBUTING.mdのガイドラインに従って受け付けられています。
ライセンス
ライセンスは混在しています。プロジェクトのデフォルトはAGPLv3.0ですが、apps/origin/とapps/ui/は元のMITライセンスのままとなっており、その他のディレクトリはすべてAGPLv3が適用されます。詳細はLICENSING.mdに記載されています。
謝辞
READMEでは、ユーティリティファーストのCSSフレームワークであるTailwind CSS、コンポーネントの基盤となるアクセシブルなプリミティブを提供したBase UI、コピー&ペーストのコンポーネント哲学のインスピレーションとなったshadcn/ui、およびコンポーネントドキュメントの背後にあるドキュメントフレームワークであるFumadocsに謝意が述べられています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.