As the project evolves, we should simplify our documentation stack to remove the maintenance burden of auto-generated API docs and prepare for a future Zensical migration. ruff-sync is a CLI tool, and the auto-generated API reference (gen-files + mkdocstrings) is low value compared to hand-authored documentation that focuses on the CLI interface and core integration points.
Tasks
-
Remove Dependencies
Remove mkdocstrings and mkdocs-gen-files from pyproject.toml under [dependency-groups.docs].
-
Delete Generation Scripts
Delete the file docs/gen_ref_pages.py. This script is currently used by gen-files to discover and generate API pages.
-
Update mkdocs.yml Plugins
Remove the gen-files and mkdocstrings plugins from the plugins: block in mkdocs.yml.
# Remove these:
- gen-files:
scripts:
- docs/gen_ref_pages.py
- mkdocstrings:
handlers:
python:
paths: [src]
# ... (options)
- Create Hand-Authored API Reference (
docs/reference/api.md)
Create a new file docs/reference/api.md that provides a high-level summary of the ruff-sync CLI and core library. It should include:
- CLI Commands: A summary of
pull, check, and init commands (use ruff-sync --help as a guide).
- Core Result Types: A brief overview of the
Config (TypedDict) and FetchResult (NamedTuple) from src/ruff_sync/core.py.
- Main Entry Point: Mention that the core logic resides in
ruff_sync.core.sync or the cli.main function.
- Update Navigation
In mkdocs.yml, update the nav: block so that "API Reference" points directly to the new api.md file:
nav:
- ...
- API Reference: reference/api.md
Validation
- Run
uv run mkdocs build and ensure the site builds without errors and the new API Reference page is correctly rendered.
As the project evolves, we should simplify our documentation stack to remove the maintenance burden of auto-generated API docs and prepare for a future Zensical migration.
ruff-syncis a CLI tool, and the auto-generated API reference (gen-files+mkdocstrings) is low value compared to hand-authored documentation that focuses on the CLI interface and core integration points.Tasks
Remove Dependencies
Remove
mkdocstringsandmkdocs-gen-filesfrompyproject.tomlunder[dependency-groups.docs].Delete Generation Scripts
Delete the file
docs/gen_ref_pages.py. This script is currently used bygen-filesto discover and generate API pages.Update
mkdocs.ymlPluginsRemove the
gen-filesandmkdocstringsplugins from theplugins:block inmkdocs.yml.docs/reference/api.md)Create a new file
docs/reference/api.mdthat provides a high-level summary of theruff-syncCLI and core library. It should include:pull,check, andinitcommands (useruff-sync --helpas a guide).Config(TypedDict) andFetchResult(NamedTuple) fromsrc/ruff_sync/core.py.ruff_sync.core.syncor thecli.mainfunction.In
mkdocs.yml, update thenav:block so that "API Reference" points directly to the newapi.mdfile:Validation
uv run mkdocs buildand ensure the site builds without errors and the new API Reference page is correctly rendered.