# AGENTS.md

Gin is a high-performance HTTP web framework written in Go. It provides a Martini-like API but with significantly better performance—up to 40 times faster—thanks to httprouter. Gin is designed for building REST APIs, web applications, and microservices.

## Setup

```
go mod download
```

## Commands

```
make test        # run the test suite, must pass before any commit
make fmt
make fmt-check
make vet
make lint        # lint
make misspell
```

## Layout

- `binding/`  30 source files
- `render/`   17 source files
- `codec/`    5 source files
- `internal/` 4 source files
- `ginS/`     2 source files

## Conventions

- Tests live alongside the code they cover, following `auth_test.go`.
- CI defines what passing means. See `.github/workflows/codeql.yml`, and keep it green.
- TODO: add the two or three conventions a newcomer always gets wrong here.

## Gotchas

- `context_test.go` is 115KB. It will not fit comfortably in context, so read it in parts.

---

Drafted by agentreadme.com from what is in this repository. Everything marked TODO
needs a human. Check it in as AGENTS.md at the root.
