# Contributing to Runic Gateway — Documentation

Thanks for your interest in contributing! This repo is the **central
documentation** for the Runic Gateway platform — design docs, the protocol spec,
integration guides, and research, extracted from the code repos so they live in
one place.

By participating you agree to abide by our
[Code of Conduct](CODE_OF_CONDUCT.md).

## Ways to contribute

- **Report an error** (something wrong, outdated, or unclear) or **request new
  documentation** through the
  [issue tracker](https://gitea.whitlocktech.com/RunicGateway/docs/issues)
  (issue templates are provided).
- **Fix or expand the docs** by opening a pull request (see below).
- **Never** report a security vulnerability in a public issue — see
  [SECURITY.md](SECURITY.md).

## Working on the docs

Everything here is Markdown — no build step. Just edit the relevant file and
preview it in any Markdown viewer (or on Gitea).

```
website/   docs for the shard website (Node/Express + MariaDB + React/Vite)
link/      docs for the ServUO bridge (C# plugin + Rust sidecar)
```

Guidelines:

- Keep documents in the folder matching their subsystem (`website/` or `link/`).
- These docs are the **authoritative** copy of the protocol and design; when you
  change behavior in a code repo, update the matching doc here in the same or a
  follow-up PR so the spec and implementation stay in sync.
- Use relative links between docs, and check that any links you add resolve.
- Prefer clear prose and tables over screenshots where possible.

## Branch & PR workflow

1. Branch from `main` with a descriptive name (`docs/…`, `fix/…`, `chore/…`).
2. Keep changes focused; small PRs are easier to review.
3. Push and open a pull request against `main`. Fill out the PR template,
   including the **AI-assisted contributions** disclosure.
4. A maintainer will review; address feedback with follow-up commits.

### Commit messages

We use [Conventional Commits](https://www.conventionalcommits.org/) —
`type(scope): summary` (e.g. `docs(link): clarify town-crier caps`).

## AI-assisted contributions (disclosure required)

This project is developed openly with AI assistance, and we ask the same
transparency of everyone. **If you used an AI tool** (Claude, Copilot, ChatGPT,
Cursor, etc.) to help produce a contribution, you must disclose it:

- Tick the AI-usage box in the pull-request template and name the tool(s).
- Mark AI-authored commits with a trailer, e.g.
  `Co-Authored-By: Claude <noreply@anthropic.com>` or `Assisted-By: <tool>`.
- You remain responsible for every line you submit: review it, understand it,
  and make sure it is accurate and that you have the right to contribute it.

Disclosed AI assistance is welcome. Undisclosed AI-generated contributions are
not, and may be closed.

## License

Runic Gateway is licensed under the **GNU General Public License v3.0 or later**
(see [LICENSE.md](LICENSE.md)). By submitting a contribution you agree that it is
licensed under the same terms (inbound = outbound) and that you have the right to
contribute it.
