A robust NestJS backend API for a Trello-like project management application with real-time collaboration features.
- Authentication & Authorization: JWT-based authentication with Passport.js
- Real-time Collaboration: WebSocket support for live updates
- Project Management: Boards, Lists, and Cards management
- User Management: User registration, login, and profile management
- MongoDB Integration: Mongoose ODM for data persistence
- API Documentation: RESTful API endpoints
- Validation: Request validation using class-validator
- Error Handling: Comprehensive error handling and logging
- Framework: NestJS 11.x
- Language: TypeScript
- Database: MongoDB with Mongoose
- Authentication: JWT + Passport.js
- Real-time: Socket.io
- Validation: class-validator + class-transformer
- Testing: Jest
- Code Quality: ESLint + Prettier
Before running this application, make sure you have the following installed:
- Node.js (v18 or higher)
- npm or yarn
- MongoDB (running locally or accessible instance)
-
Clone the repository
git clone <repository-url> cd hive-board
-
Install dependencies
npm install
-
Environment Setup Create a
.env
file in the root directory:PORT= #PORT_NUMBER MONGODB_URI= #MONGODB_URI JWT_SECRET=your-super-secret-jwt-key JWT_EXPIRES_IN=24h
-
Start MongoDB Make sure MongoDB is running on your system:
# On Ubuntu/Debian sudo systemctl start mongod # On macOS with Homebrew brew services start mongodb-community # Or using Docker docker run -d -p 27017:27017 --name mongodb mongo:latest
npm run start:dev
npm run build
npm run start:prod
npm run start:debug
npm run format
npm run lint
npm run build
This project is licensed under the UNLICENSED license.