zanzibar
huma
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
zanzibar
-
I write HTTP services in Go after 13 years (Mat Ryer, 2024)
I wrote a static config class that reads configuration for the entire app / server from a JSON or YAML file ( https://github.com/uber/zanzibar/blob/master/runtime/static_... ).
Once you've loaded it and mutated it for testing purposes or for copying from ENV vars into the config, you can then freeze it before passing it down to all your app level code.
Having this wrapper object that can be frozen and has a `get()` method to read JSON like data make it effectively not mutable.
- Zanzibar: Google’s Consistent, Global Authorization System
huma
- I write HTTP services in Go after 13 years (Mat Ryer, 2024)
- Huma: REST API framework for Go with OpenAPI generation
- Show HN: Go framework with builtin OpenAPI support
- Show HN: Huma 2.0, it's like FastAPI for Go built on OpenAPI 3.1 and JSON Schema
-
APIs in Go with Huma 2.0
I created a Huma v2 branch to rewrite it for Go 1.20+ improving on almost every aspect of the framework, and the 2.0.0 release is available now alongside a brand new Huma Documentation site.
-
Replacement for loopfz/gadgeto (OpenAPI 3 generator)
You might want to check https://github.com/danielgtaylor/huma I haven't explored the lib in-depth, but last time I checked it seemed like it could be a nice alternative/replacement.
-
Seeking Advice on the Best Swagger Generation Approach for REST API
Github: https://github.com/danielgtaylor/huma
-
State of OpenAPI support in Go routing/web frameworks
Huma might be an option.
- I just wanted to bring more attention to my favorite web framework: Huma
- Huma – REST/GraphQL API Framework for Golang with OpenAPI 3
What are some alternatives?
casbin - An authorization library that supports access control models like ACL, RBAC, ABAC in Golang: https://discord.gg/S5UjpzGZjN
Gin - Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
Ory Keto - Open Source (Go) implementation of "Zanzibar: Google's Consistent, Global Authorization System". Ships gRPC, REST APIs, newSQL, and an easy and granular permission language. Supports ACL, RBAC, and other access models.
chi - lightweight, idiomatic and composable router for building Go HTTP services
gqlgen - go generate based graphql server library
Echo - High performance, minimalist Go web framework
fastapi - FastAPI framework, high performance, easy to learn, fast to code, ready for production
Fiber - ⚡️ Express inspired web framework written in Go
vulcain - Fast and idiomatic client-driven REST APIs.
openapi-go - OpenAPI structures for Go
websocket - A fast, well-tested and widely used WebSocket implementation for Go.
javalin-openapi - Annotation processor for compile-time OpenAPI & JsonSchema, with out-of-the-box support for Javalin 5.x, Swagger & ReDoc