Complete the M15 documentation and final review milestone: README.md (French, brief): - Project description, quick start, usage, deployment link, acknowledgments - Acknowledgments: pronotepy, icalendar, caldav, slixmpp, pydantic, openai, feedparser, beautifulsoup4, and inspiration from pronote-digest (Antoine Coulon) - Author: Antoine Van Elstraete README.LLM.md (English, AI agent guide): - Prerequisites, installation on LXC/VPS (Debian/CentOS) - Non-secret configuration preparation (all env vars listed) - Secret variables clearly identified as operator-only - Pre-deployment checks (check_secrets.py, pip check, dry-run) - systemd/timer/logrotate installation steps - Notes for AI agent (do not commit secrets, do not modify existing files) LICENSE: - Standard MIT License, copyright Antoine Van Elstraete (2026) CHANGELOG.md: - Initial changelog following Keep a Changelog format - Covers M1 through M14 with milestone summaries - Gitea Actions noted as planned/optional, not delivered .gitignore: - Added FEAT_* pattern for temporary work files TODO.md: - M15 items 1-4 checked (README, architecture docs, CHANGELOG+LICENSE, final review) - M15 item 5 (Gitea Actions) left unchecked (optional, not done) Co-authored-by: opencode/tech-writer <tech-writer@agents.invalid>
70 lines
1.9 KiB
Markdown
70 lines
1.9 KiB
Markdown
# pronote-sync
|
|
|
|
Synchronisation Pronote → CalDAV + XMPP.
|
|
|
|
---
|
|
|
|
Synchronise l'agenda et les devoirs de **Pronote** vers un calendrier **CalDAV** et envoie un résumé quotidien par **XMPP**. Supporte les sources iCal et `pronotepy` avec repli automatique. Synthèse IA optionnelle.
|
|
|
|
---
|
|
|
|
## 🚀 Démarrage rapide
|
|
|
|
```bash
|
|
# Cloner le dépôt
|
|
git clone <repo-url>
|
|
cd pronote-sync
|
|
|
|
# Créer l'environnement virtuel
|
|
python3.13 -m venv .venv
|
|
source .venv/bin/activate
|
|
|
|
# Installer
|
|
pip install -e ".[dev]"
|
|
|
|
# Configurer
|
|
cp .env.example .env
|
|
# Éditer .env avec vos paramètres (voir .env.example pour le détail)
|
|
|
|
# Tester
|
|
pronote-sync --dry-run --log-level DEBUG
|
|
```
|
|
|
|
---
|
|
|
|
## 📖 Utilisation
|
|
|
|
```bash
|
|
pronote-sync # Exécute la synchronisation
|
|
pronote-sync --dry-run # Simulation sans écriture
|
|
pronote-sync --log-level DEBUG # Verbosité des journaux
|
|
```
|
|
|
|
---
|
|
|
|
## 🛠️ Déploiement
|
|
|
|
Les artefacts pour **systemd/timer** et **logrotate** sont fournis dans `deploy/`. Voir [docs/exploitation.md](docs/exploitation.md) pour plus de détails.
|
|
|
|
---
|
|
|
|
## 🙏 Remerciements
|
|
|
|
Ce projet repose sur les bibliothèques open-source suivantes :
|
|
- [pronotepy](https://github.com/bain3/pronotepy) — client Pronote
|
|
- [icalendar](https://github.com/collective/icalendar) — parsing iCal
|
|
- [caldav](https://github.com/python-caldav/caldav) — client CalDAV
|
|
- [slixmpp](https://github.com/poezio/slixmpp) — client XMPP
|
|
- [pydantic](https://github.com/pydantic/pydantic) — validation et configuration
|
|
- [openai](https://github.com/openai/openai-python) — synthèse IA
|
|
- [feedparser](https://github.com/kurtmckee/feedparser) — parsing RSS
|
|
- [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/) — parsing HTML
|
|
|
|
Inspiré de [pronote-digest](https://github.com/antoine-coulon/pronote-digest) par Antoine Coulon.
|
|
|
|
---
|
|
|
|
## Licence
|
|
|
|
MIT — voir [LICENSE](LICENSE).
|