1.3 KiB
1.3 KiB
Contributing
Thanks for considering a contribution.
Setup
python -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'
Copy env template:
cp .env.example .env
Then set real values in .env and run:
streamlit run app.py
Development guidelines
- Keep architecture boundaries clear:
clients/for external integrationsdomain/for normalization/business logicservices/for app services/indexingui/for Streamlit rendering
- Avoid introducing optional fallback paths unless required.
- Prefer small, focused functions and explicit session-state keys.
- Preserve safe SSH behavior and path quoting.
Validation
Before opening a merge request, run:
PYTHONPATH=src python -m py_compile app.py src/media_library_viewer/*.py src/media_library_viewer/clients/*.py src/media_library_viewer/domain/*.py src/media_library_viewer/services/*.py src/media_library_viewer/ui/*.py
Security / secrets
Never commit:
.env.streamlit/secrets.toml- private keys or API tokens
Use .env.example for documented placeholders only.
Pull requests
Please include:
- what changed
- why it changed
- how it was tested
If behavior/requirements changed, also update docs/REQUIREMENTS.md.