SwiftCart is a scalable, production-ready microservice backend powering an eCommerce platform.
This repository contains the complete backend architecture built using Spring Boot and Docker, designed to support robust product management, secure routing via API Gateway, and future-ready service extensibility.
- Microservices: Modular Spring Boot services
- API Gateway: Centralized routing and authentication layer
- Docker: Containerized deployment via
docker-compose
- PostgreSQL-ready: Production-grade database integration
- Secure & Maintainable: Built for real-world deployment and scaling
The SwiftCart backend is designed for containerized deployment on AWS using:
- Amazon ECS (Elastic Container Service)
- Spring Cloud Gateway behind an Application Load Balancer (ALB)
- Docker Compose for local orchestration
- PostgreSQL as the production database
- Health Checks via Spring Boot Actuator for service discovery and resilience
Infrastructure is optimized for scalability, observability (Prometheus + Grafana), and fault tolerance.
This is not a demo or boilerplate — SwiftCart is a backend designed to serve actual production systems with high reliability and extensibility.
The following environment variables must be set for the Product Service:
# AWS S3 Configuration
AWS_ACCESS_KEY=your-aws-access-key
AWS_SECRET_KEY=your-aws-secret-key
AWS_REGION=eu-north-1
AWS_S3_BUCKET_NAME=swiftcart-vendor-uploads
# JWT Configuration
JWT_SECRET_KEY=your-jwt-secret-key
- Copy
application.properties.template
toapplication.properties
- Set the required environment variables
- Update the database configuration as needed
- Use environment variables or AWS Secrets Manager for credential management
- Never commit
application.properties
files containing real credentials - The template file (
application.properties.template
) is safe to commit