Open source · Go · Echo

APIs that stay in sync.

EchoNext adds typed handlers, request validation, and automatic OpenAPI documentation to Echo—without taking away the framework you already know.

$ go get github.com/abdussamadbello/echonext@v1.4.8
api/users.go
type CreateUser struct {
  Name string `json:"name" validate:"required,min=2"`
  Email string `json:"email" validate:"required,email"`
}

func createUser(c echo.Context, req CreateUser) (User, error) {
  // req is already bound and validated
  return users.Create(req)
}

app.POST("/users", createUser, echonext.Route{
  Summary: "Create a user",
  SuccessStatus: 201,
})
Echo compatiblemiddleware + context
OpenAPI 3.0generated automatically
MIT licensedopen by default
v1.4.8latest stable docs

One source of truth

Write the contract once.

Your Go types drive binding, validation, responses, and API documentation. Fewer parallel definitions means fewer opportunities for drift.

01

Typed by default

Request and response structs become the contract. Handler signatures stay explicit and compiler-friendly.

02

OpenAPI from code

Generate an OpenAPI 3 specification from the same routes and Go types that serve production traffic.

03

Validation included

Use familiar struct tags and receive consistent validation failures before business logic runs.

04

CLI workflows

Scaffold projects, generate domains, run development builds, and manage common project tasks.

05

Beyond REST

Build file uploads, WebSocket hubs, and gqlgen-backed GraphQL endpoints with Echo context access.

06

Production helpers

Opt into testing, database, config, metrics, request IDs, and OpenTelemetry contrib packages.

Keep Echo. Add confidence.

Progressive, not prescriptive.

Wrap the routes that benefit from a typed contract and keep using standard Echo middleware, groups, context methods, static assets, and error handling everywhere else.

Without a shared contract

Definitions drift across layers

  • Bind request payloads manually
  • Invoke validation by hand
  • Maintain schemas separately
  • Repeat response envelopes
With EchoNext

Types carry the contract

  • Declare request and response structs
  • Register a typed handler
  • Generate and serve OpenAPI
  • Keep the complete Echo surface

A practical toolkit

From route to runtime.

Start with the core wrapper. Add only the integrations and contrib packages your service actually needs.

Your next endpoint

Make the implementation and the documentation agree.

Install the stable release, register your first typed route, and let EchoNext carry the repetitive parts.