A modular and scalable e-commerce API built with Go, following Clean Architecture (Hexagonal) and Domain-Driven Design principles.
- Clean Architecture: Well-organized code with clear separation of concerns
- Domain-Driven Design: Business logic encapsulated in domain entities
- RESTful API: Comprehensive endpoints for e-commerce operations
- Authentication & Authorization: JWT-based auth with role-based access
- Database Integration: PostgreSQL with GORM ORM
- Caching: Redis for improved performance
- Docker Support: Easy deployment with Docker Compose
- Unit Testing: Comprehensive test coverage
- API Documentation: Well-documented endpoints
- Go 1.21+
- PostgreSQL 13+
- Redis 6+
- Docker & Docker Compose (optional)
Clone the repository.
git clone git@github.com:tyronejosee/prototype_fiber.git
cd prototype_fiberCopy the environment file.
cp .env.example .envUpdate the .env file with your configuration.
DB_HOST=
DB_PORT=
DB_USER=
DB_PASSWORD=
DB_NAME=
REDIS_HOST=
REDIS_PORT=
JWT_SECRET=Start all services with Docker Compose.
make docker-upBuild and start with logs.
make docker-buildView logs.
make logsStop all services.
make docker-downStart PostgreSQL and Redis services.
make depsRun the application.
make runRun tests.
make test- Fork the repository
- Create a feature branch, e.g.
feature/your-feature-name - Implement your feature
- Write tests for new functionality
- Ensure all tests pass
- Submit a pull request to the
mainbranch
This project is licensed under the MIT License.
Enjoy! 🎉