コンテンツにスキップ

コントリビューター向け

このセクションは、Timeline DSL 本体やこのドキュメントサイトを fork して開発する人、pull request を作成する人、公開設定を保守する人に向けた情報です。

.tdsl ファイルを作成・検証・レンダリングするだけの場合は、インストールQuick Start から読み進めてください。

このサイトは Astro + Starlight 製で、コマンドはすべて site/ 配下で実行します。パッケージマネージャは pnpm、Node.js は 26 を使います。

Terminal window
cd site
pnpm install --frozen-lockfile # 依存をインストール
pnpm dev # 開発サーバー(http://localhost:4321)

CI(.github/workflows/site-build.yml)と同一のゲートをローカルで再現する 2 つの集約コマンドがあります。プッシュ前は少なくとも pnpm check を実行してください。

コマンド 内容
pnpm check ブラウザ不要の高速ゲート。lintformat:checktest:unitbuildsmoke:wasmastro checkastro build)→ bundle-size
pnpm check:full 上記に加えて preview サーバを起動し、smoke:seo / smoke:i18n(:browser) / smoke:playground(:browser) / smoke:a11y / test:visual / Lighthouse CI を実行。成功・失敗・中断のいずれでも preview サーバを必ず停止します。Chromium の事前インストール(pnpm exec playwright install chromium)が必要です。

pnpm check:fullsmoke:i18n:browsersmoke:playground:browser を含め、CI でも実行されます(ブラウザ系のゲートは CI でスキップされません)。個々のコマンド(pnpm smoke:wasm / smoke:playground / smoke:i18n / smoke:seo など)も引き続き単独で実行できます。

LP のレイアウト・配色・タイポグラフィを変更した場合は pnpm test:visual を単独実行し、差分が意図した変更であることを確認してから pnpm test:visual:update でベースラインを更新してください。ベースライン画像の変更は目視レビューが必要な差分として PR に含めます(このコマンドは CI からは実行しません)。

  • コミットは Conventional Commits 形式(feat: / fix: / docs: など)で書きます。
  • PR 本文に対応 issue を Closes #N で必ず紐付け、PR タイトルは 70 文字以内に収めます。
  • 変更が複数の責務に跨る場合は PR を分けます(1 PR = 1 論理的変更)。
  • main への force push は禁止です(CI 履歴と Cloudflare Pages のデプロイ履歴が壊れます)。
  • マージ前に Cloudflare Pages の preview デプロイが Green であることを確認します。
  • ja のドキュメントを編集したら、対応する en のページも同じ PR の中で更新します。日本語ページに英語タイトルを残さないでください。
  • 新しい色を直書きせず、site/src/styles/global.css--color-* トークンを使います。新色が必要な場合は light / dark / high-contrast の 3 セットを同時に追加します。