A RESTful backend API for managing users, faculty members, and university courses. Built using Node.js, Express.js, MongoDB, and JWT Authentication following a clean MVC architecture.
- 🔐 JWT Authentication
- 👤 User Management
- 🎓 Faculty Management
- 📚 Course Management
- 🛡️ Protected Routes
- 🔑 Password Hashing
- 🌱 Database Seeder
- 🌐 RESTful API Architecture
- 🗄️ MongoDB Integration
| Technology | Purpose |
|---|---|
| Node.js | JavaScript Runtime |
| Express.js | Backend Framework |
| MongoDB | Database |
| Mongoose | ODM |
| JWT | Authentication |
| bcrypt | Password Hashing |
| dotenv | Environment Variables |
.
├── config/
├── controller/
├── middleware/
├── models/
├── seeder/
├── utils/
├── server.js
├── package.json
└── .env
Clone the repository
git clone https://github.com/devawais01/university-course-management-api.gitNavigate to the project
cd university-course-management-apiInstall dependencies
npm installCreate a .env file
PORT=5000
MONGO_URI=your_connection_string
JWT_SECRET=your_secretRun the server
Development
npm run devProduction
npm startPopulate sample data
npm run seed- Authentication
- Users
- Faculty
- Courses
- JWT Authentication
- Password Hashing
- Protected Routes
- Environment Variables
- Student Enrollment
- Attendance Management
- Grades & Results
- Swagger Documentation
- Docker Support
- CI/CD
- Automated Testing
Muhammad Awais
GitHub: https://github.com/devawais01
LinkedIn: https://www.linkedin.com/in/dev-awais01
Licensed under the MIT License.
See the LICENSE file for details.