Interactive learning platform with journeys, modules, lessons, and AI-powered applets.
├── backend/ # Hono API server
│ └── src/
│ ├── domains/ # Domain modules (auth, users, journeys, applets, progression, ai)
│ ├── db/ # Database schema and migrations
│ ├── lib/ # Shared utilities (env, errors)
│ └── index.ts # Application entry point
├── frontend/ # Next.js application
│ ├── app/ # App router pages
│ ├── components/ # React components
│ ├── lib/ # Client utilities
│ └── styles/ # Global styles
└── package.json # Monorepo root
- Bun v1.0+
- PostgreSQL 15+
- Clone the repository
- Copy environment file:
cp .env.example .env
- Update
.envwith your database credentials - Install dependencies:
bun install
bun run dev:backendServer runs at http://localhost:3001
GET /health- Health checkPOST /auth/login- User loginPOST /auth/logout- User logoutGET /users/:id- Get userGET /journeys- List journeysGET /journeys/:id- Get journeyPOST /applets/:id/submit- Submit applet answer
bun run dev:frontendApplication runs at http://localhost:3000
bun run dev- Stateless modular monolith organized by domain
- Each domain owns its models, services, and routes
- Routes are thin; business logic lives in services
- No cross-domain imports except via service interfaces
- Next.js App Router with React Server Components
- API calls go directly to backend service
- Components organized by feature
This is a skeleton project. All endpoints return 501 Not Implemented.
- Implement database migrations
- Implement auth domain (sessions, tokens)
- Implement users domain (CRUD)
- Implement journeys domain (CRUD, modules, lessons)
- Implement applets domain (evaluation logic)
- Implement progression engine
- Implement AI integration
- Build frontend UI