AI voice-powered surveys.
Respondents speak instead of clicking. koel transcribes, surfaces themes, and gives you the thinking behind answers.
koel replaces multiple-choice surveys with open-ended voice conversations. A respondent clicks a link, speaks their answers, and koel handles transcription, theme clustering, and AI-powered insight queries β so survey creators get qualitative signal at scale.
koel/
frontend/ Next.js 16 app (App Router, TypeScript, Tailwind v4)
backend/ Python FastAPI service (in progress)
koel-ui-design-system/ Figma-exported design tokens + reference components
| Layer | Technology |
|---|---|
| Frontend | Next.js 16, React 19, TypeScript 5, Tailwind CSS v4 |
| Auth | Clerk (@clerk/nextjs v7) |
| Animations | Framer Motion |
| Backend | Python FastAPI (Supabase DB) |
| Design system | Absans (display) + Manrope (body), CSS design tokens |
See frontend/docs/building-the-project.md for frontend setup, env vars, and scripts.
See backend/docs/building-the-project.md for backend setup, env vars, and scripts.
For AI agents and new developers β read in this order:
frontend/CLAUDE.mdβ project rules, architecture decisions, known quirks (Clerk, Next.js 16 middleware, CSS tokens)frontend/docs/building-the-project.mdβ setup, env vars, route groupsfrontend/docs/code-conventions.mdβ folder structure, server/client component rules, styling conventionsfrontend/docs/wiring-with-mock-data.mdβ how the data layer works, how to add new data functionskoel-ui-design-system/README.mdβ design tokens, palette, typography rules β read before touching any UI
Backend docs follow the same structure under backend/docs/ (being added as backend phases complete).
- Name is always
koel, neverKoelorKOEL. - Run
npm run typecheck && npm run buildbefore opening a PR β both must pass clean. - Check
frontend/docs/issues-and-fixes.mdfor known issues before filing a new one. - UI Design questions β
koel-ui-design-system/README.mdis the source of truth. - Backend Design questions β
backed/docs/architecture.mdis the source of truth