Zero Boilerplate Code
Aggregate roots, repositories, and event publishing work out of the box. Interface-first design means repositories, event buses, and event stores are all interface-based, making mock testing effortless.
Clean Architecture Layers
Strict dependency inversion ensures the domain layer has zero infrastructure awareness. Generic repository DSL with Go generics provides type-safe CRUD/pagination/soft delete across multiple databases with a single interface.
Event-Driven Architecture
Event bus supports multiple backends: Memory/NATS JetStream/RabbitMQ/Redis with unified interface for runtime switching. Native NATS JetStream integration with persistent event streams, consumer groups, and replay capabilities for Event Sourcing.
Domain-Driven Design
Built-in aggregate root templates with event sourcing support. Aggregate version control & optimistic locking, snapshot mechanism for accelerating large version aggregate reconstruction, command pattern & use case executor.
Microservice Autonomy
One service, one database is no longer a luxury. NATS lightweight high-performance event stream, BadgerDB embedded billion-level KV database. Each microservice can be deployed, scaled, and upgraded independently without affecting other services.
Saga Distributed Transactions
Orchestrated Saga coordinator with clear compensation transaction chains ensures cross-service consistency. Testcontainers integration testing with PostgreSQL and Redis real container testing, eliminating false positives from mock databases.
