An open API service indexing awesome lists of open source software.

https://github.com/tapiwamakandigona/express-api-starter

Production-ready REST API starter with Express, TypeScript, Prisma, JWT auth, validation, error handling, and tests
https://github.com/tapiwamakandigona/express-api-starter

api-boilerplate backend express jest jwt-authentication nodejs prisma rest-api typescript zod

Last synced: 3 months ago
JSON representation

Production-ready REST API starter with Express, TypeScript, Prisma, JWT auth, validation, error handling, and tests

Awesome Lists containing this project

README

          



Express + TypeScript + Prisma REST API Starter


A production-grade REST API boilerplate with JWT authentication, input validation, Prisma ORM, comprehensive error handling, and full test coverage.




Top Language
Last Commit


---

## โšก What's Included

This is not a tutorial project โ€” it's a **production-ready starter** designed for immediate use in real applications.

| Layer | Technology | Purpose |
|-------|-----------|---------|
| **Runtime** | Node.js + Express | HTTP server |
| **Language** | TypeScript (Strict Mode) | Type safety |
| **ORM** | Prisma | Database access with migrations |
| **Auth** | JWT + bcrypt | Stateless authentication |
| **Validation** | Zod | Runtime input validation |
| **Testing** | Jest + Supertest | Unit + integration tests |
| **CI/CD** | GitHub Actions | Automated build + test |

---

## ๐Ÿ—๏ธ Architecture

```mermaid
graph TD;
Client[HTTP Client] --> Router[Express Router];
Router --> Middleware[Auth Middleware / JWT];
Middleware --> Controller[Route Controllers];
Controller --> Service[Business Logic];
Service --> Prisma[Prisma ORM];
Prisma --> DB[(PostgreSQL)];
Controller --> Validator[Zod Schemas];
```

---

## ๐Ÿš€ Quick Start

```bash
git clone https://github.com/tapiwamakandigona/express-api-starter.git
cd express-api-starter
npm install
cp .env.example .env
npx prisma migrate dev
npm run dev
```

## ๐Ÿงช Run Tests

```bash
npm test
```

---


Built by Tapiwa Makandigona


โญ Star this if you use it as a starter for your next API!