K8sCommerce is in active development! The goal is to create a cloud native microservice-based ecommerce platform written in Go—for kubernetes deployments.
Project status: in active development / pre-alpha
Documentation is in active development at k8scommerce.com.
K8sCommerce began as a personal project of localrivet.
The following shows what has been completed and what is yet to be done:
Service | DB Table(s) | .proto | .api | logic | tests | release |
---|---|---|---|---|---|---|
Cart | ✅ | ✅ | ✅ | ✅ | ✅ | alpha |
Catalog | ✅ | ✅ | ✅ | ✅ | partial | alpha |
Customer | ✅ | ✅ | ✅ | ✅ | partial | alpha |
✅ | ✅ | ✅ | ✅ | partial | alpha | |
Imageresizer | ✅ | ✅ | ✅ | ✅ | partial | alpha |
Inventory | ✅ | ✅ | ✅ | pre-alpha | ||
Others Bought | - | ✅ | - | |||
Payment | ✅ | ✅ | ✅ | - | ||
Shipping | - | ✅ | - | |||
Similar Products | ✅ | ✅ | - | |||
Store | ✅ | ✅ | ✅ | - | ||
User | ✅ | ✅ | ✅ | ✅ | alpha | |
Warehouse | - | ✅ | - | |||
Wishlist | - | - | - |
There are three types of microservices use in this project.
- Frontend / Client - These services are web-facing services via a REST/JSON.
- Admin API - Contains all admin endpoints and is a separate service from the client.
- Client API - Contains all the client endpoints used in ecommerce stores.
- Backend RPC - These communicate to the frontend/client services via gRPC / protobufs.
- Cart
- Catalog
- Customer
- Inventory
- Payment
- Shipping
- Store
- User
- Warehouse
- Consumer - These services listen for specific events via RabbitMQ that can be run in the background.
- Imageresizer
- Others Bought
- Similar Products
Checkout our kubernetes operator.
Would you like to contribute? We need help in the following areas:
- Coding
- Testing
- Documentation
- Promotion
- Administration Development
- Kubernetes
- Terraform
- GitOps
- Etc.
Thanks goes to these wonderful people (emoji key):
localrivet 🚇 💻 📖 |
This project follows the all-contributors specification. Contributions of any kind welcome!