mirror of
https://github.com/Katakate/k7.git
synced 2026-09-22 01:53:19 +00:00
1.5 KiB
1.5 KiB
Contributing to K7
Thanks for your interest in contributing!
We chose a lean and minimal approach to make development on this project as simple as possible:
- Infra is handled by a single Ansible playbook
- The CLI and API are implemented respectively with Typer and FastAPI in Python, for simplicity. They both wrap over the same
coremodule.
Project Direction
Check out the ROADMAP.md to see planned features, current priorities, and long-term goals. It's a great starting point if you're looking for areas to contribute!
Repo Layout
src/k7/CLI, core logic, API serversrc/katakate/Python SDK (published to PyPI as katakate)src/k7/deploy/Ansible playbook to install nodeutils/helper scripts
Packaging
- The root Python packaging (
setup.pyandMANIFEST.in) builds thekatakateSDK for PyPI only. - Assets under
src/k7/(includingsrc/k7/deploy/*) are not included in the PyPI package; they are used by the Debian/CLI packaging flow.
Code Style
- Python: PEP8, explicit types for public APIs, early returns, no inline comments
- Lint/format with Ruff:
- Install:
pip install ruff - Check:
ruff check src - Format:
ruff format src
- Install:
Building
- CLI deb helpers live in
src/k7/cli/scripts - Make targets may be available:
maketo list
Releases
- Bump versions in
src/k7/__init__.pyandsrc/katakate/__init__.py - Tag
vX.Y.Zto build artifacts (CI may publish .deb and wheels)
Reporting Issues
- Include steps, expected vs actual, logs, and environment (arch/OS/hardware)