Introduction
Why ShopMicro, how the course is structured, and what you’ll have built by the end. Open →
Introduction
Why ShopMicro, how the course is structured, and what you’ll have built by the end. Open →
Setup & Tooling
Install Go, Docker, and the rest of the toolchain, and lay out the monorepo. Open →
Protobuf & gRPC
Define service contracts in Protobuf and generate Go gRPC stubs. Open →
Catalog Service
Build the Catalog gRPC server backed by its own PostgreSQL database. Open →
Order Service
Build the Order gRPC server that places orders and emits events. Open →
API Gateway
Expose the services as REST through grpc-gateway behind one entry point. Open →
Kafka (Event Stream)
Publish and consume a replayable event log with Kafka producers and consumers. Open →
RabbitMQ (Work Queues)
Route work through RabbitMQ exchanges and queues for asynchronous processing. Open →
Payment Service
Consume order events and process payments in a dedicated service. Open →
Order Saga
Coordinate the multi-service order flow with a saga and the outbox pattern. Open →
Notification Service
React to domain events and notify customers from a standalone consumer. Open →
Resilience
Add timeouts, retries, and backoff so the system survives partial failure. Open →
Testing
Cover the services with table-driven unit tests and integration tests. Open →
Docker & Compose
Containerize every service and bring the whole stack up with one command. Open →
Kubernetes (Helm)
Package and deploy the whole system to Kubernetes with a Helm chart. Open →
Wrap-up
Review what you built and where to take ShopMicro next. Open →
Real, copy-pasteable code
Every snippet is real, runnable Go code you can copy straight into your project — no pseudo-code.
Adapts the Learn Hub courses
Built on patterns from the Learn Hub Go and microservices courses, applied to one real project end to end.
Bilingual EN / ไทย
Available in English and ไทย — switch anytime from the top bar.
You build it by following along
This is a build-along guide: you write the code yourself, step by step, not just read about it.