This repository contains the CoffeeShop Backend, a robust backend solution for managing a coffee shop's operations. Built with a modern tech stack, this backend offers features for handling customer orders, inventory management, and user authentication.
- Order Management: Efficient order processing, including queue-based handling with RabbitMQ.
- Inventory and Data Management: Integrated with MongoDB for reliable data storage.
- Caching: Enhanced performance using Redis for caching.
- Session Management: Used Redis to manage user sessions for a secure and scalable session handling system.
- Error Handling: Advanced error tracking and monitoring with Sentry.
- Environment Configuration: Managed with envalid and dotenv for flexible and secure setups.
- API Testing: A Postman Collection (Coffee Shop API) is included to test API endpoints effortlessly.
- Containerization: Fully containerized with Docker and Docker Compose for easy deployment and scaling.
- Programming Language: Node.js with TypeScript
- Framework: Express.js
- Database: MongoDB with Mongoose (ORM)
- Message Queue: RabbitMQ
- Caching/Session Management: Redis
- Error Monitoring: Sentry
- Environment Management: envalid, dotenv
- Containerization: Docker, Docker Compose
To test the available API endpoints:
- Import the Coffee Shop API file into Postman.
- Configure the environment variables as needed.
- Start testing the endpoints interactively with detailed requests and responses.