A RESTful API to manage users and subscriptions with user authentication, subscription tracking, and renewal reminders. Built with Node.js and Docker for easy development and deployment.
- ✅ User authentication (Sign up, Sign in, Sign out)
- ✅ Manage users and subscriptions (CRUD)
- ✅ Track upcoming subscription renewals
- ✅ Docker support for smooth development & deployment
- ✅ Written in modern JavaScript (Node.js, ES6+)
- ✅ pnpm support for faster package management
- ✅ MIT Licensed and contributions welcome!
- Node.js (v18+)
- pnpm
- Docker & Docker Compose (Optional)
git clone https://github.com/sujeetgund/subscription-tracker.git
cd subscription-tracker
cp .env.example .env.development.localdocker-compose uppnpm install
pnpm run devdocker build -t subscription-tracker .
docker run -d -p 5500:5500 --env-file .env.production subscription-trackerFor full details, check out the API documentation.
/api/v1
POST /auth/sign-up– Create a new userPOST /auth/sign-in– Log in a userPOST /auth/sign-out– Log out
GET /users– List all usersGET /users/:id– Get user by IDPOST /users– Create userPUT /users/:id– Update userDELETE /users/:id– Delete user
GET /subscriptions– List subscriptionsGET /subscriptions/:id– Get subscription by IDPOST /subscriptions– Create subscriptionPUT /subscriptions/:id– Update subscriptionDELETE /subscriptions/:id– Delete subscriptionGET /subscriptions/user/:id– Get user subscriptionsPUT /subscriptions/:id/cancel– Cancel subscriptionGET /subscriptions/upcoming-renewals– Upcoming renewals
We welcome your contributions! Please check the issues and pull requests.
This project is licensed under the MIT License. See LICENSE for details.