AI-powered proposal generation platform.
- Framework: Next.js 15 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- Database: PostgreSQL + Drizzle ORM
- Package Manager: pnpm (monorepo workspaces)
- Build: Turborepo
- Deployment: Vercel
proposal-pilot/
├── apps/
│ └── web/ # Next.js 15 application
├── packages/
│ ├── database/ # Drizzle ORM schemas & migrations
│ └── ui/ # Shared UI components
├── .github/
│ └── workflows/
│ └── ci.yml # GitHub Actions CI
├── package.json # Root workspace config
├── pnpm-workspace.yaml
└── turbo.json
- Node.js 20+
- pnpm 9+
- PostgreSQL 16+
# Install dependencies
pnpm install
# Set up environment variables
cp apps/web/.env.example apps/web/.env.local
# Run database migrations
pnpm db:migrate
# Start development server
pnpm devCreate apps/web/.env.local:
DATABASE_URL=postgresql://user:password@localhost:5432/proposalpilot
NEXTAUTH_SECRET=your-secret-here
NEXTAUTH_URL=http://localhost:3000pnpm dev # Start all apps in dev mode
pnpm build # Build all apps
pnpm lint # Lint all packages
pnpm type-check # Type check all packages
pnpm format # Format code with Prettierpnpm db:generate # Generate migrations from schema
pnpm db:migrate # Apply migrations
pnpm db:studio # Open Drizzle Studio