- Implement all CRUD routes and expose them
- Update deletion logic. Add "$set" to all queries.
- Document implemented and planned API routes using POSTMAN
- Orders
- Users
- Products
- Categories
- Carts
- Auth
- Health
- Implement carts repository.
- Implement carts service.
- Implement carts handler.
- Refactor orders feature.
- Implement authentication feature (JWT Authentication).
- Implement auto set shipping address to owner address if present.
- Implement messaging for orders, whenever the status of an order changes, a message is sent to the queue.
- Add route protection to concerned routes.
- Users
- Orders
- Products
- Categories
- Carts
- Document implemented and planned API routes using SWAGGER
- Orders
- Users
- Products
- Categories
- Carts
- Auth
- Health
- Write tests
- Users
- Products
- Categories
- Carts
- Auth
- Implement email messaging for order creation, status changes and cancellation.
- Product Catalog: Search, filter, and browse through products.
- User Accounts: User registration, login, and profile management.
- Shopping Cart: Add, remove, and modify items in a cart.
- Order Management: Place orders, track status, and view order history.
- Admin Dashboard: Manage inventory and view analytics.
- Payment Integration: Seamlessly integrate popular gateways like Stripe or PayPal.
- Notifications: Real-time or scheduled notifications for order updates.
- Backend: Go
- Database: MongoDB
- Task Queue: RabbitMQ (for asynchronous task processing)