#17411·netty

Generate documentation from repository files

Author: vpelikhCreated Sep 10, 2026Updated Sep 10, 2026

Currently, the Netty documentation on the GitHub Wiki (https://github.com/netty/netty/wiki) lives in a separate Git repository (netty.wiki.git). This repository is not part of the main netty/netty repository, and GitHub does not support pull requests against a wiki repository.

As a result, external contributors who do not have write access to the project cannot propose documentation improvements through the standard fork-and-pull-request workflow. The only way to change the Wiki today is for a maintainer (or someone with collaborator access) to manually clone the wiki repository, make edits, and push. This creates a significant barrier for community members who want to help improve the documentation.

I understand this is not a critical issue, but it could significantly help improve the documentation. For example, the Native transports page is quite outdated — it doesn't mention io_uring at all, and I would be happy to fix that if I could submit a pull request.

This issue suggests storing the documentation source files inside the main repository and automatically generating the documentation from them, so that documentation contributions can go through the same pull request review process as code.

How other Java projects solve this

Several well-known Java projects have already moved away from the separate wiki repository and now treat documentation as part of the main codebase, where it can be contributed via pull requests:

  1. Spring Framework / Spring Boot — The reference documentation is authored in AsciiDoc and lives in the main repositories. Contributors submit pull requests against the main repository, and documentation changes go through the same review process as code.

  2. Quarkus — The guides are maintained in the main Quarkus repository under docs/src/main/asciidoc. Pull requests for documentation should be submitted there, and the contribution guide explicitly states this.

  3. Micronaut — The documentation sources are located in the main micronaut-core repository. Contributors are directed to edit sources there and open pull requests.

  4. Apache Camel — The documentation is kept in the main apache/camel repository and is aggregated into the website via Antora. Contributions to the documentation are made through pull requests against the main repository.

Open questions

  • Is a separate documentation platform still needed at all? Netty already has a website (netty.io) that hosts documentation. If the website is the primary source of truth, maybe the GitHub Wiki should be deprecated or clearly scoped to a small subset of pages that cannot live on the website. It would be good to decide this before investing in tooling.

  • If a separate documentation platform is still useful, I can think about and propose a concrete sync workflow (e.g., a docs/ folder in the main repository plus a GitHub Actions job that pushes changes to netty.wiki.git after merge). I am happy to work on a proposal if maintainers think this is worth pursuing.