AI-powered simulated user interview platform for early product validation.
npm installStart local Supabase instance:
npx supabase startThis will output your local Supabase credentials. Save these for the next step.
Copy the example environment file:
cp .env.local.example .env.localUpdate .env.local with your Supabase credentials from step 2:
NEXT_PUBLIC_SUPABASE_URL=http://localhost:54321
NEXT_PUBLIC_SUPABASE_ANON_KEY=<your-anon-key-from-npx-supabase-start>
SUPABASE_SERVICE_ROLE_KEY=<your-service-role-key>Generate an encryption key for user API keys:
openssl rand -base64 32Add it to .env.local:
ENCRYPTION_KEY=<generated-key>npx supabase db pushThis will create all necessary tables and seed the persona templates.
npm run devOpen http://localhost:3000 to see the app.
- Framework: Next.js 16 (App Router)
- Database: Supabase (PostgreSQL)
- Auth: Supabase Auth
- UI: shadcn/ui + Tailwind CSS
- State: TanStack Query + Zustand
- LLM: Vercel AI SDK (OpenAI + Anthropic)
simustudy/
├── app/ # Next.js app directory
│ ├── (auth)/ # Auth pages (login, signup)
│ ├── (dashboard)/ # Protected dashboard pages
│ └── api/ # API routes
├── components/ # React components
│ ├── ui/ # shadcn/ui components
│ └── providers/ # Context providers
├── lib/ # Utilities
│ ├── supabase/ # Supabase clients
│ └── utils/ # Helper functions
├── supabase/
│ └── migrations/ # Database migrations
└── types/ # TypeScript types
See docs/plan.md for the complete implementation plan and roadmap.