go-japi
Don
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.
go-japi
-
What's the reason behind the design decision to not return a response value from handlers?
Check out https://github.com/jarrettv/go-japi if you are building a JSON HTTP API. Also `go-don` is faster and supports other encoding formats.
-
Is it possible to write a well-typed controller/handler in Go?
go-japi and go-don are two small libraries that will do what you want.
-
Connect, a better gRPC
The generic request and response wrappers seem interesting but they do tend to make the handler signature very verbose with little upside. For example: `type Handle[T any, O any] func(ctx context.Context, request T) (O, error)` would be really sweet. See go-japi for example.
-
japi is a JSON HTTP API go library with generics
Japi is a fork and simplification of another library. The upstream library go-don adopted fasthttp and our use case needed to stay on standard net/http.
Don
- Show HN: Don – A fast and simple API framework written in Go
-
go-kit VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
Iris VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
fasthttp VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
Beego VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
Buffalo VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
Fiber VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
mux VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
chi VS Don - a user suggested alternative
2 projects | 15 Mar 2023
-
Echo VS Don - a user suggested alternative
2 projects | 15 Mar 2023
What are some alternatives?
flamego - A fantastic modular Go web framework with a slim core but limitless extensibility
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.
Macaron - Package macaron is a high productive and modular web framework in Go.
Echo - High performance, minimalist Go web framework
there - ⚡️ Robust Web Framework to build Go Services
httprouter - A high performance HTTP request router that scales well
connect-go - Moved to https://github.com/connectrpc/connect-go
todong - to-do list backend example
grpc-gateway - gRPC to JSON proxy generator following the gRPC HTTP spec
go-sql-driver/mysql - Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package
go-respond - A Go package for handling common HTTP JSON responses.
algnhsa - AWS Lambda Go net/http server adapter