KDL Starter Kit
KDL Starter Kit is an open-source, modular, AI-ready SaaS boilerplate by Kalam Dream Labs Pvt Ltd. It includes a full-featured backend (Node.js + Express + PostgreSQL) and a modern frontend (Next.js + TailwindCSS), ready to scale into a CRM, CMS, invoicing, or automation platform.
π Features
- π JWT-based authentication (ready for roles & multi-tenancy)
- π¦ Modular backend with REST APIs (Node.js + Express + Prisma)
- π§ AI Integration-ready (Langchain, Whisper, Ollama, ChromaDB)
- π§Ύ CMS + CRM + Invoicing support (modular architecture)
- π Next.js frontend with TailwindCSS, Zustand, and reusable components
- π³ Dockerized setup with PostgreSQL and full dev environment
- π§ͺ Playwright-ready for E2E testing (optional)
- β Open source, clean structure, and easy to extend
π Tech Stack
| Layer | Tech |
|---|---|
| Frontend | Next.js, React, TailwindCSS, Zustand |
| Backend | Node.js, Express, PostgreSQL, Prisma |
| AI Ready | Langchain, Whisper, Ollama, ChromaDB |
| DevOps | Docker, GitHub Actions, Vault, Sentry |
π Project Structure
kdl-starter-kit/
βββ backend/ # Node.js + Express + Prisma API
βββ frontend/ # Next.js + Tailwind frontend
βββ ai-services/ # Langchain, Whisper, Ollama integrations
βββ mobile/ # Native mobile (iOS/Android, optional)
βββ infra/ # Docker, CI/CD, secrets
βββ docs/ # Architecture, API reference, roadmap
β Prerequisites
Common Requirements:
For Docker Setup:
For Manual Setup (Without Docker):
βοΈ Getting Started
You can install and run the KDL Starter Kit using one of the two methods:
π³ Option 1: Docker-Based Setup (Recommended)
In this method, you'll set up the backend and Prisma before launching Docker to ensure the database is correctly migrated and seeded.
π Step 1: Clone the Repository
git clone https://github.com/kalamdreamlabs/kdl-starter-kit.git
cd kdl-starter-kit
π§ Step 2: Backend Setup (Before Docker)
cd backend
Create a .env file:
DATABASE_URL="postgresql://postgres:root@localhost:5432/kdl_backend"
JWT_SECRET=supersecretjwt
Initialize Prisma:
npx prisma migrate dev --name init
node prisma/seeders/settingseed.js # Optional: seed data
π Do NOT start the backend server yet. Proceed to start Docker first.
π Step 3: Frontend Setup
cd ../frontend
Create .env:
NEXT_PUBLIC_API_URL=http://localhost:4000/api
π³ Step 4: Start Docker Services
Return to the root directory:
cd ..
docker-compose exec backend npx prisma migrate dev --name init
docker compose up
This will start the PostgreSQL container on port 5432.
Frontend is now live at: http://localhost:3000
π Option 2: Manual Setup (Without Docker)
For users running PostgreSQL locally (without Docker).
π Step 1: Clone the Repository
git clone https://github.com/kalamdreamlabs/kdl-starter-kit.git
cd kdl-starter-kit
π’ Step 2: PostgreSQL Setup
- Install PostgreSQL and start a local DB server.
- Create a new database:
kdl_backend - Use username:
postgresand password:root(or update accordingly in.env)
π§ Step 3: Backend Setup
cd backend
npm install
Create .env:
DATABASE_URL="postgresql://postgres:root@localhost:5432/kdl_backend"
JWT_SECRET=supersecretjwt
Run migrations and seed (optional):
npx prisma migrate dev --name init
node prisma/seeders/settingseed.js
npm run dev
π Step 4: Frontend Setup
cd ../frontend
npm install
Create .env:
NEXT_PUBLIC_API_URL=http://localhost:4000/api
Run the frontend:
npm run dev
π§ Optional: Prisma Studio
To open the visual DB editor:
npx prisma studio
β Final Check
| Component | URL |
|---|---|
| Frontend | http://localhost:3000 |
| Backend | http://localhost:4000 |
| Prisma UI | http://localhost:5555 |
π€ Contributing
We welcome your contributions! Please check out our CONTRIBUTING.md and CODE_OF_CONDUCT.md.
π License
Licensed under the Apache 2.0 License Β© 2025 Kalam Dream Labs Pvt Ltd.
Built with β€οΈ by Kalam Dream Labs Pvt Ltd