Use Cases

Claude Code Turborepo dengan Claude Code

Pelajari tentang claude code turborepo menggunakan Claude Code. Dilengkapi tips praktis dan contoh kode.

Turborepomonorepoのpembangunan dengan Claude Code: 加速

Turborepo 、Vercel pengembangan 高性能なmonorepobuildsistem.インクリメンタルbuild dan インテリジェントcache より、大規模proyek juga cepatなbuild 維持 bisa dilakukan.Claude Code pemanfaatanすれば、Turborepo kompleksなpengaturan juga efisien 進められ.

初期pembangunan proyek

> Turborepo dengan monorepo 新規pembuatanして。
> 構成:
> - apps/web: Next.js App Router
> - apps/docs: Astrodokumenサイト
> - packages/ui: 共通UIlibrary
> - packages/utils: utilitasfungsi
> - packages/tsconfig: TypeScriptpengaturan

Claude Code generate turbo.json pengaturan例.

{
  "$schema": "https://turbo.build/schema.json",
  "globalDependencies": ["**/.env.*local"],
  "globalEnv": ["NODE_ENV"],
  "pipeline": {
    "build": {
      "dependsOn": ["^build"],
      "outputs": ["dist/**", ".next/**", "out/**"],
      "env": ["NEXT_PUBLIC_API_URL"]
    },
    "dev": {
      "cache": false,
      "persistent": true
    },
    "lint": {
      "dependsOn": ["^build"]
    },
    "test": {
      "dependsOn": ["^build"],
      "outputs": ["coverage/**"]
    }
  }
}

dependency設計 pipeline

Turborepo pipeline 、task間 dependency dependsOn 宣言.

> package間 依存 考慮して、build → test → deploy 
> pipeline 設計して。型チェック build dan 並列 dengan 実行したい。
{
  "pipeline": {
    "build": {
      "dependsOn": ["^build"],
      "outputs": ["dist/**"]
    },
    "type-check": {
      "dependsOn": ["^build"]
    },
    "test": {
      "dependsOn": ["build"],
      "outputs": ["coverage/**"]
    },
    "deploy": {
      "dependsOn": ["build", "test", "type-check"],
      "cache": false
    }
  }
}

build dan type-check 互い 依存し tidak untuk 、Turborepo 自動的 並列実行 くれ.

pengaturan リモートcache

チームpengembangan リモートcache 欠かせ tidak.

> Vercel Remote Cache konfigurasi.
> CI環境 dengan juga 使えるよう.
# Vercelアカウントとリンク
npx turbo login
npx turbo link

# CI環境用の設定(GitHub Actions)
# TURBO_TOKEN と TURBO_TEAM を secrets に設定
# .github/workflows/ci.yml
name: CI
on: [push, pull_request]
env:
  TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
  TURBO_TEAM: ${{ secrets.TURBO_TEAM }}
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: pnpm/action-setup@v2
      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: 'pnpm'
      - run: pnpm install
      - run: pnpm turbo build lint test --filter=...[HEAD^]

--filter=...[HEAD^] 使うこ dan 、変更 あったpackageだけ build対象 bisa dilakukan.

filteringでefisienなpengembangan

> webaplikasiだけ devモード dengan 起動して。
> 依存package watch juga efektif.
# 特定のアプリとその依存パッケージのみ実行
pnpm turbo dev --filter=web...

# 変更があったパッケージのみビルド
pnpm turbo build --filter=...[origin/main]

# 特定パッケージを除外
pnpm turbo build --filter=!./apps/docs

debug cache

buildcache 効か tidak場合、Claude Code debug 依頼 bisa dilakukan.

> turbo build cache ヒットしない原因 調査して。
> turbo run build --dry=json output periksa.
# キャッシュステータスの確認
pnpm turbo build --dry=json | jq '.tasks[] | {taskId, cache}'

# 詳細なログ出力
pnpm turbo build --verbosity=2

Summary

Dengan Claude Code, Turborepo pipeline設計やcache戦略 素早くoptimasi bisa dilakukan.monorepomanajemen dasarCI/CDpengaturanpanduan juga 合わせて参考 .

Untuk Turborepoの詳しいpengaturan, lihat Turborepo公式ドキュメント.

#Claude Code #Turborepo #monorepo #buildtools #performance