ultisuite-backend/project-plan/README.md

3.6 KiB

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 Partiel (backend avancé, incomplet)
Contacts Google Contacts contacts.md Partiel (API proxy CardDAV)
Agenda Google Calendar agenda.md Partiel (API proxy CalDAV)
Ultidrive Google Drive ultidrive.md Partiel (API proxy WebDAV/OCS)
Ultimeet Google Meet ultimeet.md Partiel (JWT Jitsi minimal)
Administration Google Admin administration.md Partiel (squelette API)
Ultiphotos Google Photos ultiphotos.md Partiel (proxy Immich minimal)
Ultimaps Google Maps 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