An AI-powered B2B learning platform for enterprises designed to onboard employees via an AI skill assessment interview and auto-generate personalized learning paths with curated internet resources.
| Layer | Technology | Description |
|---|---|---|
| Frontend | Next.js 15 (App Router) | React framework for web, TypeScript, Tailwind CSS, TanStack React Query, Zustand, Axios |
| Backend API | NestJS | Node.js MVC framework, TypeScript, Prisma ORM, Class Validator |
| AI Service | FastAPI | Python high-performance async framework, LangChain, Pydantic, Redis |
| Database | PostgreSQL | Relational database (connected via Prisma) |
| Caching & Queue | Redis | Fast in-memory key-value cache and message broker |
| Infrastructure | PNPM Workspaces | Monorepo structure, Clerk (Auth), Pinecone (Vector DB), Stripe (Payments), SendGrid (Email) |
Ensure you have the following installed locally:
- Node.js:
20.xor higher - pnpm:
9.xor higher - Python:
3.11.xor higher
-
Clone the Repository
git clone <repository-url> cd learning-platform
-
Copy Environment Variables
cp .env.example .env
(Update any API keys and connection strings inside
.envas required) -
Install Dependencies
pnpm install
-
Start the Development Servers To launch the Next.js frontend, NestJS API, and FastAPI AI service concurrently, run:
pnpm dev:all
Or start them individually:
- Next.js Web:
pnpm dev:web - NestJS API:
pnpm dev:api - FastAPI AI:
pnpm dev:ai
- Next.js Web:
├── apps/
│ ├── web/ ← Next.js 15 (App Router, TypeScript)
│ ├── api/ ← NestJS (TypeScript)
│ └── ai/ ← FastAPI (Python)
├── packages/
│ └── shared/ ← Shared TypeScript types and utilities
├── pnpm-workspace.yaml
├── package.json
└── README.md
The application runs across three different environments:
- Local Development: Spin up all systems concurrently using
pnpm dev:all. - Staging environment: Automated deployments trigger when code is pushed to the
developbranch.- Frontend app deploys to Vercel Staging.
- API and AI backend services deploy to Railway Staging.
- Production environment: Triggered on push or merge to the
mainbranch.- Depends on successful completion of the CI test suite.
- Requires manual approval on the GitHub Actions console before deployment.
- API database migrations (
prisma migrate deploy) are executed automatically prior to container upgrades.