What problem does it solve?
Developing Go applications and libraries requires adherence to specific architectural patterns, testing methodologies, and code styles to ensure maintainability and quality. This Skill provides a comprehensive guide to navigate these complexities, ensuring your Go projects are robust and idiomatic.
Core Features & Use Cases
- Go Application Structure: Understand typical package layouts for web applications and libraries, including
main, model, sql, http, and html packages.
- Code Style & Best Practices: Learn about dependency injection, testing with subtests and table-driven tests, variable naming conventions, and documentation standards.
- Testing & Evaluation: Guidance on running tests, linters, and LLM evaluations, including using real dependencies with Docker and database fixtures.
- Use Case: When tasked with building a new Go web service, this skill provides the blueprint for structuring the project, writing idiomatic Go code, and implementing robust tests, ensuring consistency with established patterns and reducing development time.
Quick Start
Run all tests for the project
make test
or
go test -shuffle on ./...