A Go library providing common server infrastructure components for DIMO.
This repository contains reusable Go packages for building server applications with:
- Monitoring Server: HTTP server with health checks, metrics, and optional pprof profiling
- Server Runner: Utilities for gracefully starting and stopping HTTP, gRPC, and Fiber servers
- GraphQL Error Handling: Standardized error handling and presentation for GraphQL APIs
- GraphQL Metrics: Prometheus metrics collection for GraphQL requests
- Rich Errors: Enhanced error types with external messages and error codes
pkg/monserver: Monitoring server with health endpoints and metricspkg/runner: Server lifecycle management utilitiespkg/gql/errorhandler: GraphQL error handling and presentationpkg/gql/metrics: GraphQL request metrics collectionpkg/richerrors: Enhanced error types with codes and external messages