# AGENTS.md

Network-wide ads & trackers blocking DNS server

## Setup

```
go mod download
```

## Commands

```
make build         # produce a build
make init
make quick-build
make deps
make lint          # lint
make test          # run the test suite, must pass before any commit
```

## Layout

- `client_v2/` 584 source files
- `internal/`  445 source files
- `client/`    225 source files
- `scripts/`   26 source files
- `snap/`      1 source file

## Conventions

- Tests live alongside the code they cover, following `client/src/__tests__/checkRedirect.test.ts`.
- CI defines what passing means. See `.github/workflows/mirror.yaml`, and keep it green.
- TODO: add the two or three conventions a newcomer always gets wrong here.

## Gotchas

- Generated output is committed (`build/`). Search will return the compiled copy, so edit the source, not that.
- `internal/filtering/servicelist.go` is 238KB. 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.
