Holicare — Architecture cible

4 interfaces isolées, auth dédiée par interface, rôles DB dédiés, packages partagés v1.0 — avril 2026

Personas
Externe
👤

Collaborateur

Salarié d'une entreprise cliente. Passe le Holitest, suit ses formations et son parcours de soin.

Interfaces
apps/app
app.holicare.com
  • Holitest
  • Mon bilan personnel
  • Mon parcours de soins
  • Mes formations
  • Mon organisation
  • ...
PasswordlessMagic Link + Google + Apple
Existant
Base de données
Schema
app_public
  • users
  • user_emails
  • organizations
  • user_authentications
  • ...
Role
role_visitor Accès à ses propres données via RLS
Personas
Externe
📊

DRH / Direction

Côté client. Consulte les indicateurs santé mentale, lance des campagnes de formation et suit les résultats par équipe.

Interfaces
apps/dashboard
dashboard.holicare.com
  • Indicateurs santé mentale
  • Stats mode de vie
  • Suivi formations
  • Suivi par équipe
  • Super-organisations
  • ...
Invitation + PasswordlessAdmin invite par email, puis Magic Link
Nouveau
Base de données
Schema
app_dashboard
  • stats_global mat. view
  • stats_teams mat. view
  • stats_lifestyle mat. view
  • stats_training mat. view
  • stats_multi_orgs mat. view
  • ...
Role
role_dashboard Données anonymisées uniquement, aucune donnée individuelle. RLS par organization_id
Personas
Interne
☤️

Équipe médicale

IDEC, cheffes d'équipe, directeur médical. Gèrent les patients et coordonnent les parcours de soin.

Interfaces
apps/care
care.holicare.com
  • Dossier patient
  • Suivi RDV
  • Praticiens
  • Documents
  • Suivi d'activité
  • ...
SSO domaineGoogle SSO restreint @holicare.com
Nouveau
Base de données
Schema
app_care
  • patients
  • appointments
  • care_plans
  • staff / teams
  • ...
Roles (3 niveaux)
role_care_idec Ses patients assignés uniquement
role_care_lead Patients de son équipe + activité IDEC
role_care_director Tout app_care sans restriction
Personas
Interne
⚙️

Administration

Équipe interne Holicare. Configure la plateforme, gère les clients et la facturation.

Interfaces
apps/admin
admin.holicare.com
  • Config plateforme
  • Gestion clients
  • Facturation
  • Consentement
  • ACL par section
  • ...
SSO domaineGoogle SSO restreint @holicare.com
Refonte
Base de données
Schema
app_public
  • organizations
  • users
  • surveys
  • programs
  • ...
app_admin
  • clients
  • invoices
  • configurations
  • staff
  • ...
Role
role_admin Accès complet app_public + app_admin (ACL géré niveau RLS + code)
Chantiers techniques parallèles
1

PNPM + Turborepo

Migration Yarn 4 vers PNPM workspaces. Turborepo pour le cache de build, la parallélisation des tâches et le build conditionnel.

2

Images Docker dédiées

Un Dockerfile par app. Diminuer la surface d'exposition pour chaque interface.

3

GitLab CI conditionnel

Ne rebuild que les images dont les sources ont changé. Détection via Turborepo + rules GitLab sur les fichiers modifiés.

4

Services Cloud Run dédiés

Un service par app derrière le même load balancer. Sous-domaines dédiés par interface.

5

Terraform

Infrastructure as code pour tout l'infra Google Cloud. Versionner l'infra et faciliter le déploiement d'environnements de test.

6

Rôles et schémas DB par interface

Créer les nouveaux rôles et schémas PostgreSQL dédiés à chaque interface. Adapter le schéma auth pour Better Auth.

Packages partagés — @holicare/*
PackageDescriptionStatut
@holicare/authCrypto, rate-limit, helpers sessionnouveau
@holicare/graphilePostGraphile library mode, pluginsnouveau
@holicare/uiComposants shadcn/ui, design tokensnouveau
@holicare/configVariables d'environnement, validation Zodexistant
@holicare/dbMigrations, schemas, rolesexistant
@holicare/typesTypes DB partagés (users, orgs)nouveau