Empowering voters with informed choices
- Framework: Next.js 15 (App Router)
- Runtime: Bun
- Language: TypeScript (strict)
- Database: Drizzle ORM + Neon Serverless (Postgres)
- Auth: Better Auth (email/password + OAuth)
- Billing: Stripe (dual-mode: live + test)
- Email: Resend
- Deploy: Vercel
- CI/CD: GitHub Actions
bun install
cp .env.example .env.local # fill in your values
bun run db:push # create database tables
bun run dev # start dev serverbun run dev— start dev serverbun run build— production buildbun run lint— ESLintbun run format— Prettierbun run db:push— push schema to databasebun run db:studio— Drizzle Studio (database GUI)
See .env.example for all required variables.