Introduction
This section provides an overview of Matcha.
Matcha is an schema-first Golang REST framework built on top of the Chi router, where "schema-first" here implies:
- Your HTTP handlers must be two types via generics. One for the request and one for the response.
- Your HTTP routes must have an OpenAPI specification before you can register them as a resource.
Packages
Package | Description |
---|---|
matcha | Routing (direct fork of chi) |
matcha/middleware | Middlewares (direct fork of chi/middleware) |
matcha/ctx | Type-strict context for request and response |
matcha/openapi | OpenAPI specification builder using pure Go code |
matcha/reference | API reference using the Scalar client |
matcha/security | JSON Web Tokens (JWT), hashing, and encryption |
matcha/email | Sending emails over SMTP using HTML templates |
matcha/cache | In-memory and Redis caching |
matcha/logger | Simple logging with syslogs format |