Spin up a Go REST API with rate limiting, CORS, and request tracing already configured, no manual wiring needed.
Auto-generate standard database read, write, update, and delete operations for a table using the built-in code generator.
View and manage scheduled background jobs through the included web admin interface.
Generate interactive Swagger documentation for all API endpoints automatically.
README is in Chinese, requires a running database and Redis to use all built-in features.
go-gin-api is a starter framework for building web APIs in the Go programming language. It is built on top of Gin, a popular Go library for handling HTTP requests, and adds a collection of pre-integrated tools so developers can get a working API up and running without wiring everything together from scratch. The framework comes with a range of built-in features. It handles rate limiting, which is the ability to cap how many requests a particular endpoint accepts over a given time. It supports cross-origin requests, which is what allows web browsers on one domain to call an API hosted on a different domain. Authentication tokens, request tracing for diagnosing slow calls, and structured logging are also included. Errors across the application use a consistent numbering scheme so that callers always receive predictable error responses. For databases, the framework integrates with gorm, a popular Go library for working with relational databases, and includes a code generator that can produce standard database read, write, update, and delete operations for a given data table. Redis, a fast in-memory data store, is also connected. Scheduled tasks can be configured and viewed through a built-in web admin interface. The framework can also generate API documentation automatically using Swagger, which produces an interactive page listing all available endpoints and their parameters. There is optional GraphQL support for APIs that prefer that query style over traditional REST, and a WebSocket integration for real-time communication between server and client. The README is written in Chinese, though an English version is linked separately. The repository describes itself as a learning reference and cautions against using it in production without careful review. A lighter version with fewer integrations is also mentioned for developers who want a simpler starting point.
← xinliangnote on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.