InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →
Top 23 Go REST Projects
-
kubeshark
The API traffic analyzer for Kubernetes providing real-time K8s protocol-level visibility, capturing and monitoring all traffic and payloads going in, out and across containers, pods, nodes and clusters. Inspired by Wireshark, purposely built for Kubernetes
Github
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
goa
Design-first Go framework that generates API code, documentation, and clients. Define once in an elegant DSL, deploy as HTTP and gRPC services with zero drift between code and docs.
-
-
pREST
PostgreSQL ➕ REST, low-code, simplify and accelerate development, ⚡ instant, realtime, high-performance on any Postgres application, existing or new
-
-
-
huma
A modern, simple, fast & flexible micro framework for building HTTP REST/RPC APIs in Go backed by OpenAPI 3 and JSON Schema.
Solutions to this problem generate API documentation automatically. Libraries such as drf-spectacular use code structure and semantics in back-end frameworks to infer API contracts. API frameworks such as FastAPI and Huma generate OpenAPI specifications as a built-in feature. Tools like mitmproxy2swagger generate documentation from HAR files. Finally, companies such as Akita Software/Postman use network traffic metadata.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
-
-
azure-sdk-for-go
This repository is for active development of the Azure SDK for Go. For consumers of the SDK we recommend visiting our public developer docs at:
Project mention: How to configure and customize the Go SDK for Azure Cosmos DB | dev.to | 2025-05-06Common retry scenarios are handled in the SDK. You can dig into cosmos_client_retry_policy.go for more info.
-
You can find a full implementation of the Undefined type in the Goyave framework, alongside many other incredibly useful tools and features.
-
With tools like ogen[1], one can take a single Swagger or OpenAPI doc and generate server code with request/response validation, Prometheus metrics, OpenTelemetry, and more.
It can also generate clients and webhooks. Authentication is just declaring a SecurityScheme in the OpenAPI documentation then implementing a single function. The rest of the backend is just implementing a single interface. Unlike oapi-codegen, there is no need to tinker with middleware for authentication or logging.
Pair this with a tool like sqlc[2] and SQLite's `pragma user_version`, and you get type-safe database code and database migrations for free. I will concede that adding SQLite is a manual process, but its just two imports added to main.go.
Frontend is entirely your choice. Go's standard library provides good enough text templating that I don't miss ERB or Django-style templates. Using embed/fs, one can easily embed a bunch of assets into a single static binary, so deployment can be as simple as `go build` and moving a single binary.
I actually have a hard time using languages besides Go for developing backends, because the code generation tools eliminate the boilerplate I frequently face in other languages while also avoiding the hundreds of dependencies that Spring Boot or Quarkus need.
[1] https://ogen.dev/
-
-
go-doudou
go-doudou(doudou pronounce /dəudəu/)is OpenAPI 3.0 (for REST) spec and Protobuf v3 (for grpc) based lightweight microservice framework. It supports monolith service application as well.
-
Climate allows the server to influence the CLI behaviour by using OpenAPI's extensions. This is the secret of Climate's dynamism. Influenced by some of the ideas behind restish it uses the following extensions as of now:
-
-
webrpc
webrpc is a schema-driven approach to writing backend services for modern Web apps and networks
another project to take a look at for schema-driven approach to writing backend services and fully code-generated clients: https://github.com/webrpc/webrpc
it's similar to OpenAPI, but its simpler, and cleaner. In fact, you can generate webrpc schema's to OpenAPI and then generate OpenAPI clients.
-
-
-
chapar
Chapar is a simple and easy to use api testing tools aims to help developers to test their api endpoints. it support http and grpc protocols.
Project mention: Show HN: Chapar – A Native API Testing Tool for Developers | news.ycombinator.com | 2024-09-27 -
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Go REST discussion
Go REST related posts
-
How to configure and customize the Go SDK for Azure Cosmos DB
-
Adding filter query parameters in Go Huma
-
Show HN: Chapar – A Native API Testing Tool for Developers
-
Restish: CLI for interacting with REST-ish HTTP APIs with some nice features
-
geo2tz - 4 years later
-
Soul: A SQLite REST and Realtime Server
-
Huma: REST API framework for Go with OpenAPI generation
-
A note from our sponsor - InfluxDB
www.influxdata.com | 14 May 2025
Index
What are some of the best open-source REST projects in Go? This list will help you:
# | Project | Stars |
---|---|---|
1 | kubeshark | 11,345 |
2 | goa | 5,849 |
3 | go-restful | 5,083 |
4 | pREST | 4,347 |
5 | vulcain | 3,535 |
6 | faasd | 3,118 |
7 | huma | 3,049 |
8 | httpexpect | 2,636 |
9 | golang-gin-realworld-example-app | 2,563 |
10 | automatic-api | 2,055 |
11 | azure-sdk-for-go | 1,725 |
12 | Goyave | 1,707 |
13 | ogen | 1,699 |
14 | gorsk | 1,488 |
15 | go-doudou | 1,194 |
16 | restish | 1,047 |
17 | go-whatsapp-web-multidevice | 837 |
18 | webrpc | 773 |
19 | Gearbox | 762 |
20 | api2go | 712 |
21 | chapar | 562 |
22 | request-baskets | 386 |
23 | vanguard-go | 296 |