Skip to content

feat: switch monorepo toolchain from Turbo/Biome to Vite+ - #64

Merged
petercr merged 5 commits into
mainfrom
feat/switch-to-vite-plus
Aug 17, 2026
Merged

petercr merged 5 commits into
mainfrom
feat/switch-to-vite-plus

Conversation

@petercr

@petercr petercr commented Aug 17, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replaces Turborepo and Biome with Vite+ (vp) for install, dev, lint, format, check, test, and build across the monorepo.
  • Keeps TanStack Start working under vp dev by attaching SSR middleware when Vite+'s dual-package instanceof check would otherwise 404 every route.
  • Expands Playwright coverage for the homepage service pages (/design, /development, /digital-content, /deployment, /ai-integration) and starts the e2e server from vp build plus the Nitro node output.

Test plan

  • vp -C apps/frontend test — unit tests pass
  • vp dev (or npm run dev) — / and service pages render (not Cannot GET /)
  • npm test — Playwright e2e passes, building with NITRO_PRESET=node-server npx vp build when no server is already on :3000
  • vp check — lint/format/type-aware checks stay clean

Replace Turbo and Biome with Vite+ for install, dev, lint, format, check,
test, and build. Fix TanStack Start SSR under vp dev, cover homepage
service routes in Playwright, and start e2e from vp build.
@socket-security

socket-security Bot commented Aug 17, 2026 •

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedvite-plus@​0.2.979100100100100

View full report

@vercel

vercel Bot commented Aug 17, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
ccw Ready Ready Preview Aug 17, 2026 9:03pm

Playwright was running vp build again in CI after the workflow already
built the frontend, doubling compile time. Reuse .output on CI; still
build locally when nothing is listening on :3000.
TanStack Link to="/design" is not a file route, so the production
router left those hrefs at /. CMS paths now use the $ splat route
the same way PostCard does, and the e2e clicks the real href.
Client-side TanStack navigation from / to catch-all routes stays on
home after hydration (only the first click in CI left the page).
Render those slugs as real anchors so the click is a normal load.
@petercr
petercr merged commit a2f7be4 into main Aug 17, 2026
5 checks passed

This branch was successfully deployed

1 active deployment
Preview — 40d1cac1 Deployed Aug 17, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant