A modern monorepo setup for the Vibe Maxing project using pnpm workspaces.
vibe-maxing/
├── packages/
│ ├── frontend/ # React + Vite frontend application
│ │ ├── src/
│ │ ├── public/
│ │ ├── package.json
│ │ └── vite.config.ts
│ └── supabase/ # Supabase backend configuration
│ ├── config.toml
│ ├── functions/
│ ├── migrations/
│ └── package.json
├── package.json # Root workspace configuration
├── pnpm-workspace.yaml # Workspace definition
└── README.md
- Node.js >= 18.0.0
- pnpm >= 8.0.0
Install pnpm globally if you haven't already:
npm install -g pnpmInstall all dependencies:
pnpm install# Start development server
pnpm dev
# Build for production
pnpm build
# Build for development
pnpm build:dev
# Run linter
pnpm lint
# Preview production build
pnpm preview
# Clean all node_modules and build artifacts
pnpm cleanRun commands in specific packages:
# Frontend
pnpm --filter frontend dev
pnpm --filter frontend build
# Supabase
pnpm --filter supabase start
pnpm --filter supabase stop
pnpm --filter supabase statusThis monorepo uses pnpm workspaces for package management. All packages are defined in pnpm-workspace.yaml.
# Add to root workspace
pnpm add -w <package-name>
# Add to specific package
pnpm --filter frontend add <package-name>
pnpm --filter supabase add <package-name>
# Add dev dependency
pnpm --filter frontend add -D <package-name># Run a script in all packages
pnpm -r <script-name>
# Run in parallel
pnpm -r --parallel <script-name>- Framework: React 18 + TypeScript
- Build Tool: Vite
- UI Components: Radix UI + Tailwind CSS
- State Management: TanStack Query
- Routing: React Router DOM
- Database: PostgreSQL
- Functions: Edge Functions
- Migrations: SQL migrations
-
Start Development:
pnpm dev
-
Make Changes: Edit files in the respective packages
-
Build:
pnpm build
-
Deploy: Follow deployment instructions for each package
- Create a new branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is private and proprietary.