# 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)
