A secure, modular RESTful API built with NestJS featuring user authentication, bookmark management, end-to-end testing, and Dockerized deployment.
- ✅ User Authentication (JWT, Email & Password)
- 🔖 Bookmark CRUD (Title, Link, Description)
- 🧪 End-to-End Testing with Jest & Pactum
- 📦 Prisma ORM with PostgreSQL
- 🐳 Fully Dockerized Setup
- 📐 Clean Architecture & Modular Design
- 🧰 RESTful API Structure with Validation
- Backend: NestJS (TypeScript)
- Database: PostgreSQL + Prisma
- Testing: Jest, Pactum
- Deployment: Docker, Docker Compose
- Validation: class-validator + DTOs
src/
├── auth/ # Auth module (signup, signin)
├── user/ # User profile & editing
├── bookmark/ # Bookmark CRUD operations
├── prisma/ # Prisma service
├── Strategy/ # Guards, interceptors, pipes
└── main.ts # App bootstrap
git clone https://github.com/your-username/nestjs-bookmark-api.git
cd nestjs-bookmark-api
Create a .env file in the root directory:
DATABASE_URL="postgresql://postgres:postgres@localhost:5432/bookmarkdb"
JWT_SECRET="your_jwt_secret"
```
### 3️⃣ Run with Docker (Recommended)
docker-compose up --build
## 🧪 Running Tests
#### run pnpm test:e2e