A modular Go-based Todo Backend example with a microservice-ready project structure, compatible with the TodoBackend specification.
Fs02/go-todo-backend is a Go-based Todo Backend example that demonstrates a modular project layout suitable for medium to larger microservice applications. It provides a practical starting point for building scalable backend services with clear separation of concerns, adhering to the TodoBackend specification for interoperability with frontend clients.
Go developers building scalable backend services or microservices who need a reference implementation with a modular, domain-driven structure. It's particularly useful for teams starting medium to larger projects seeking a maintainable architecture.
Developers choose this project for its emphasis on modular, domain-driven design that prevents cyclic dependencies and enforces loose coupling, along with full test coverage and Docker deployment for reliability and ease of setup.
Go Todo Backend example using modular project layout for product microservice.
Enforces loose coupling between domains by avoiding shared entity packages, as explained in the README's project structure, preventing cyclic dependencies and improving scalability for microservices.
Includes full test coverage with examples, serving as a reliable reference for testing practices in Go, as highlighted by the high test coverage badges in the README.
Provides Docker Compose setup for quick development and deployment, making it straightforward to run in isolated environments without complex configuration.
Adheres to the TodoBackend specification, ensuring interoperability with frontend clients that follow the same standard, which is a key feature mentioned in the README.
Requires installing external tools like mockery for interface mocks and rel cli for migrations, adding steps to the setup process beyond standard Go tooling.
Focuses solely on basic todo CRUD operations without built-in support for common needs like user management or real-time features, making it less suitable for production-ready applications without extensions.
Tied to Chi for routing and REL for database access, which may limit flexibility if teams prefer more popular or alternative libraries like Gin or GORM.
Standard Go Project Layout
Go-blueprint allows users to spin up a quick Go project using a popular framework
Starter-kit for writing services in Go using Kubernetes.
Rapid, easy full-stack web development starter kit and admin panel in Go
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.