republisher/AGENTS.md
2026-03-29 13:52:23 +02:00

35 lines
1.3 KiB
Markdown

# republisher-redux
## Overview
- `republisher-redux` is a Scrapy-based tool that mirrors RSS and Atom feeds for offline use.
- Python packaging uses `pyproject.toml` with `setuptools`.
- Development uses `uv`
- Nix development and packaging use `flake.nix`.
- Formatting is managed through `treefmt-nix`, exposed via `nix fmt`.
## Workflow
- Use Python 3.13.
- Enter the dev environment with `nix develop` if you are not already inside it
- Sync Python dependencies with `uv sync --all-groups`.
- Run the app with `uv run repub`.
## Validation
- Run `nix fmt` after changing repo files that are covered by treefmt.
- Run `nix flake check` before declaring work complete.
- `nix flake check` is expected to build and check the formatter, devshell, package, tests, and lint derivations.
## Editing Rules
- Keep `treefmt.nix`, `flake.nix`, and `pyproject.toml` aligned.
- Prefer updating the flake-exported package and checks rather than adding ad hoc scripts.
- Do not commit, amend, or stage unrelated files unless explicitly asked.
- Final verication `nix flake check` must be greenbefore claiming task completeness
## Repo Notes
- The console entrypoint is `repub`.
- Runtime ffmpeg availability is provided by the flake package and devshell.
- Tests live under `tests/`.