A home for every module.
Compose your application explicitly. Keep business services in plain Go and adapters at the edges.
Explore modulesThe API-first Go framework. Generate modules, validate requests, and build typed APIs with clear boundaries.

GET /api/hello200 OKAdd Gonex to your own Go project. Generate a project, add modules, and build JSON APIs inside your own application.
The complete quick startgo install github.com/amkargar/gonex/cmd/gonex@3ca54b46cb42
gonex new shop --module example.com/acme/shop
cd shop
go mod tidyAdd an HTTP module, then start the server. Follow the quick start.
go tool gonex create module users
go tool gonex runcurl http://127.0.0.1:8080/users{ "message": "users" }The framework handles the connections.
You keep control of the application.
Compose your application explicitly. Keep business services in plain Go and adapters at the edges.
Explore modulesTyped request and response schemas, validation, and OpenAPI 3.1 describe the API you actually build.
Discover typed HTTPStart with HTTP. Bring in GORM, migrations or gRPC when your application calls for them.
See the architecturefunc Register(r transport.EndpointRegistrar,
actions Actions) error {
h := Handler{Actions: actions}
return transport.Routes(r,
transport.Post("/api/users", h.Create).
Name("createUser").
Errors(409),
transport.Get("/api/users/:id", h.Get).
Name("getUser").
Errors(404),
)
}Keep your business logic independent. HTTP handlers, database models, and Protobuf messages translate at the edges.
Modules, adapters, and a business core that does not depend on a transport.
Read the story
hello,A tour of the modular framework, its explicit boundaries, and the best place to begin.
Read the storyExplore the docs. Read the source. Build something yours.