A production-ready backend system for managing user subscriptions, built with Node.js, Express.js, and MongoDB. This project follows this Tutorial and implements real-world features including JWT authentication, database modeling, secure API architecture, email workflows, and deployment.
- Authentication: JWT-based login system with bcrypt for password hashing
- Authorization: Role-based access control (admin, user)
- Database: MongoDB with Mongoose
- API: RESTful API using Express.js with versioned routing
- Email Reminders: Automated reminder workflow using Upstash and custom email templates
- Error Handling: Centralized error middleware with custom error classes
- Security: Arcjet integration for bot protection and rate limiting