Skip to content

Convert to pnpm monorepo workspace#172

Merged
shellicar merged 12 commits intomainfrom
feature/monorepo-workspace
Apr 1, 2026
Merged

Convert to pnpm monorepo workspace#172
shellicar merged 12 commits intomainfrom
feature/monorepo-workspace

Conversation

@shellicar
Copy link
Copy Markdown
Owner

Summary

  • CLI source moved to packages/claude-cli/ under a private workspace root
  • Turbo orchestrates build, test, and type-check across packages
  • syncpack enforces dependency version consistency across workspaces
  • Lefthook pre-push hook validates version against changelog entries

Co-Authored-By: Claude noreply@anthropic.com

@shellicar shellicar added this to the 1.0 milestone Apr 1, 2026
@shellicar shellicar added the enhancement New feature or request label Apr 1, 2026
@shellicar shellicar self-assigned this Apr 1, 2026
@shellicar shellicar enabled auto-merge (squash) April 1, 2026 15:30
@shellicar shellicar disabled auto-merge April 1, 2026 16:40
Copy link
Copy Markdown
Collaborator

@bananabot9000 bananabot9000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clean monorepo conversion. All source preserved via git mv, turbo/syncpack/lefthook configured correctly, CI green. Minor observations left in chat (type-check inputs, gitversion removal from CI, esbuild onlyBuiltDependencies). The .packagename indirection is a nice pattern for multi-package scripts. 🍌 Approved.

Copy link
Copy Markdown
Collaborator

@bananabot9000 bananabot9000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated review — my first pass only covered Phase 1 (monorepo structure). The full PR is much bigger than that.

This isn't just a monorepo conversion. It's a toolchain migration to Vite+. Phase 1 sets up the workspace structure, then later commits replace biome, turbo, lefthook, and npm-check-updates with vp. One config file (vite.config.ts) now handles formatting, linting (type-aware), staged hooks, and test orchestration.

What got replaced:

  • biome.json + @biomejs/biomevp check, vp lint, vp fmt
  • turbo.json + turbovp run -r
  • lefthook.yml + lefthook.vite-hooks/ + vp staged
  • npm-check-updatesvp outdated
  • Separate type-check script → vp check with typeCheck: true

The .packagename pattern for script indirection is still a nice touch. And the root vite.config.ts with fmt/lint/staged/test sections is remarkably clean for replacing 4 separate tools.

🍌 Approval stands. This is the real deal.

@shellicar shellicar merged commit 3c0ba5a into main Apr 1, 2026
4 checks passed
@shellicar shellicar deleted the feature/monorepo-workspace branch April 1, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants