ultisuite-backend/project-plan/README.md

57 lines
3.6 KiB
Markdown

# Ulti Suite — Plan projet
Alternative souveraine et open-source à Google Suite. Chaque service est conçu pour être aussi fonctionnel et compatible avec les outils Google existants, en s'appuyant sur des technologies open-source éprouvées quand un acteur fiable existe déjà (ex: Nextcloud pour le stockage).
## Principes directeurs
- **Parité fonctionnelle** avec Google Suite, puis dépassement sur les features avancées (IA, webhooks, automatisations)
- **Compatibilité** — import/export natif des formats Google, migration progressive sans friction
- **Souveraineté** — hébergeable en propre, données sous contrôle de l'utilisateur
- **UX uniforme** — même expérience web, desktop (Tauri) et mobile
- **Interopérabilité interne** — tous les services communiquent entre eux nativement
- **Open-source first** — s'appuyer sur des briques existantes fiables plutôt que tout réinventer
## Services
| Service | Équivalent Google | Fichier plan | Statut |
|---------|-------------------|--------------|--------|
| Ultimail | Gmail | [ultimail.md](ultimail.md) | Partiel (backend avancé, incomplet) |
| Contacts | Google Contacts | [contacts.md](contacts.md) | Partiel (API proxy CardDAV) |
| Agenda | Google Calendar | [agenda.md](agenda.md) | Partiel (API proxy CalDAV) |
| Ultidrive | Google Drive | [ultidrive.md](ultidrive.md) | Partiel (API proxy WebDAV/OCS) |
| Ultimeet | Google Meet | [ultimeet.md](ultimeet.md) | Partiel (JWT Jitsi minimal) |
| Administration | Google Admin | [administration.md](administration.md) | Partiel (squelette API) |
| Ultiphotos | Google Photos | [ultiphotos.md](ultiphotos.md) | Partiel (proxy Immich minimal) |
| Ultimaps | Google Maps | [ultimaps.md](ultimaps.md) | Non commencé |
## Architecture commune
```
┌─────────────────────────────────────────────┐
│ Clients (web / Tauri / mobile) │
├─────────────────────────────────────────────┤
│ API Gateway / Auth unifiée │
├──────┬──────┬──────┬──────┬──────┬──────────┤
│ Mail │Drive │Meet │Agenda│Photos│ ... │
│ │ │ │ │ │ │
├──────┴──────┴──────┴──────┴──────┴──────────┤
│ Services partagés │
│ ├─ Auth & comptes (SSO, 2FA, OIDC) │
│ ├─ Contacts (carnet unifié) │
│ ├─ Notifications (push, mail, webhooks) │
│ ├─ Recherche transversale │
│ └─ Administration & quotas │
├─────────────────────────────────────────────┤
│ Stockage │
│ ├─ PostgreSQL (métadonnées, config, auth) │
│ ├─ Object storage (fichiers, médias) │
│ └─ Cache (Redis) │
└─────────────────────────────────────────────┘
```
## Exécution
- Checklist opérationnelle complète: [checklist-execution.md](checklist-execution.md)
- Roadmap officielle 3 phases: [roadmap-3-phases.md](roadmap-3-phases.md)
- Definition of Done (backend/frontend/sécurité/tests/observabilité): [definition-of-done.md](definition-of-done.md)