57 lines
3.6 KiB
Markdown
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)
|