Just A Project To Learn and Explore Go Lang
- GoLang
- Echo (Go Minimalist Web Framework)
- MariaDB/MySQL (Database)
- Docker
- Kubernetes
- Travis CI/CD
- User
- Product
- Transaction
- Development (Playground)
- Basic (First Milestone Basic HTTP Server)
- Monolith (Second Milestone Monolith Application)
- Master (Latest Milestone)/(Final Milestone - Kubernetes Ready Microservices Application)
- Basic Structure
- Healtcheck/Hello Endpoint
- Test Case Backbone
- Coverage Test Backbone
- Makefile
- CORS Configuration
- OpenAPI / Swagger Documentation
- Logging Middleware
- Separate Configuration From Code
- JWT Middleware
- DB Model
- Async Write To DB Using Go Routine And Channel
- User Schema
- [User] Register New User
- [User] Get User Profile Need JWT uuid user
- [User] Login User
- Product Schema
- [Product] Get Product Information
- [Product] Register Product Information
- [Product] Update Product Information
- [Product] Delete Product Information (Soft Delete)
- Transaction Schema
- [Transaction] Get Transaction Information
- [Transaction] Buy Product
- [Transaction] Update Transaction (Send Email Asynchronously For Each Update)
- Approx. 70% Coverage Test
- Dockerize
- CI/CD With Travis
- Deploy To Heroku
- Separate User Service
- Dockerize User Service
- Separate Product Service
- Dockerize Product Service
- Separate Transaction Service
- Dockerize Transaction Service
- Setup Kubernetes Deployment
- Approx. 70% Coverage Test
- Microservice CI/CD With Travis
- Deploy To Kubernetes/Minikube