#1194·watchdog

Proposal: Documentation Modernization, Dynamic Examples, and Contributor Tooling

Author: prateek-dagarCreated Aug 5, 2026Updated Sep 2, 2026
Labelsdocumentation

I would like to propose some Non-function enhancements.

1. Dynamic Examples Page Generation (examples.rst)

Based on the recent work added for examples testing, we can eliminate the maintenance overhead of manually updating documentation indices. I propose dynamically generating examples.rst from the examples/ directory at Sphinx build time using a hook in conf.py.

2. Missing Documentation for CLI (watchmedo) and Tricks

Currently, there is no dedicated documentation page for the watchmedo CLI utility or the pre-packaged classes in watchdog.tricks (their API pages are blank or missing). Adding dedicated Sphinx pages for these would help users discover and use them.

3. Addition of pre-commit Hooks

The project does not currently have pre-commit configuration. Adding a .pre-commit-config.yaml to run formatter and linter checks (ruff) locally would help ensure code standard compliance before commits are pushed and built in CI.

4. Hacking Guide & Local Verification Enhancements

The contributing guide (hacking.rst) currently doesn't instruct new contributors on how to run tests locally. Adding steps for running tests via pytest and tox, as well as running style checks, would greatly improve onboarding.

5. Automated Contributor Recognition

I suggest integrating a tool like all-contributors (similar to how projects like fpdf2 handle it) to help the maintainers easily acknowledge all kinds of contributions (docs, bugs, reviews, code) via a bot:

Reference: https://allcontributors.org/en/reference/ GitHub: https://github.com/all-contributors/allcontributors.org

I would love to know if these ideas align with the project goals, and I am happy to open PRs for these points!