arch-tsdown-monorepo について
TypeScript ライブラリ向け pnpm モノレポスターターを解説するスキルです。tsdown によるビルドと共有開発ツールを備え、ワークスペース、テスト、CI、パッケージ公開、リリース手順を扱います。
主な機能
- 01pnpm catalogs とワークスペース依存関係の利用
- 02tsdown による各パッケージのビルド
- 03ESLint、Vitest、TypeScript ツールの共有
- 04CI とリリースワークフローの解説
- 05パッケージエクスポートのスナップショットと追加手順
活用シーン
- 01TypeScript ライブラリのモノレポ開始
- 02pnpm ワークスペースへのパッケージ追加
- 03共有テストと型チェックの設定
- 04CI ベースの npm リリース準備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ hairyf/ skills --skill arch-tsdown-monorepoインストール後、Claude Code で/arch-tsdown-monorepoを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
GENERATION.mdassets/ci.ymlrelease.ymlreferences/best-practices-monorepo.mdcore-ci.mdcore-git-hooks.mdcore-overview.mdcore-package-exports.mdcore-packages.mdcore-release.mdcore-scripts.mdcore-testing.mdcore-tooling.mdcore-tsdown-per-package.mdcore-workspace.mdfeatures-add-package.mdfeatures-exports-snapshot.md詳細
arch-tsdown-monorepo は、TypeScript ライブラリ向けの pnpm モノレポスターターです(hairyf/starter-monorepo をベースにしています)。各パッケージではビルドに tsdown を使用します。共通ツール(ESLint、Vitest、TypeScript)、バージョン管理用の pnpm カタログ、ワークスペース依存関係、CI ベースのリリースに利用できるオプションの npm Trusted Publisher を提供します。
このスキルは hairyf/starter-monorepo をベースにしており、2026-02-02 に生成されました。
推奨プラクティス:
- devDependency のバージョンには pnpm カタログを使用し、
catalog:cli、catalog:testingなどを参照します。 - パッケージ間の依存関係には
workspace:*を使用します。最初の公開は手動で行い、その後は npm Trusted Publisher を使って CI でリリースします。 - ルートから
pnpm -r run ...と、projects(ルート + packages/*)を設定した単一の Vitest 設定を使って、ビルド、型チェック、テストを実行します。
コアリファレンス
| トピック | 説明 | リファレンス |
|---|---|---|
| 概要 | モノレポの目的、構成、利用場面 | core-overview |
| ワークスペース | pnpm ワークスペース、カタログ、workspace:* の依存関係 | core-workspace |
| パッケージ | パッケージの構成、エクスポート、パッケージ間の依存関係 | core-packages |
| パッケージのエクスポート | デュアルエクスポート(開発用と公開用)、main/module/types、files、sideEffects | core-package-exports |
| tsdown(パッケージごと) | entry、dts、exports、publint | core-tsdown-per-package |
| スクリプト | ルートとパッケージのスクリプト — build、dev、typecheck、test、release | core-scripts |
| テスト | Vitest projects — ルート + packages/* | core-testing |
| ツール | ESLint、TypeScript、.gitignore、.vscode | core-tooling |
| CI | GitHub Actions — lint、typecheck、テストマトリックス | core-ci |
| リリース | npm Trusted Publisher、bumpp、リリースワークフロー | core-release |
| Git フック | simple-git-hooks、lint-staged、pre-commit | core-git-hooks |
機能
| トピック | 説明 | リファレンス |
|---|---|---|
| エクスポートのスナップショット | パッケージごとのエクスポートスナップショットテスト(vitest-package-exports、runIf(IS_READY)) | features-exports-snapshot |
| パッケージの追加 | 新しいワークスペースパッケージを追加する手順 | features-add-package |
ベストプラクティス
| トピック | 説明 | リファレンス |
|---|---|---|
| モノレポ | カタログ、ワークスペース依存関係、リリース、ビルド順序 | best-practices-monorepo |
コメント
Markdown 対応