Thanks for your interest in contributing! TRAWL is a self-hosted web scraping engine released under [AGPL-3.0](LICENSE). By submitting a contribution, you agree to license your work under the same terms.
## Code of Conduct
This project follows the [Contributor Covenant](CODE_OF_CONDUCT.md). Be respectful, assume good faith, and focus on the technical merits.
## Reporting bugs & requesting features
Please use the GitHub issue templates — they ensure we have the context we need:
4.**Update `CHANGELOG.md`** under `## [Unreleased]` for any user-visible change.
5.**Fill out the PR template** — the checklist catches the easy-to-miss items.
6.**Keep PRs focused.** One feature or fix per PR; large refactors should be split.
## Adding a new tier or solver
TRAWL's design centers on a 4-tier escalation ladder (HTTP → cached session → fresh CF solve → residential proxy). If your contribution introduces a new tier or a new solver:
- Put tier logic in `packages/tiers/`.
- Put browser/solver adapters in `packages/browser/`.
TRAWL is licensed under **AGPL-3.0**. By submitting a pull request, you affirm that your contribution is your own work and you agree to license it under AGPL-3.0. AGPL is more restrictive than MIT/Apache — if your employer might claim ownership of your work, get explicit approval first.