Aller au contenu principal

Vue globale de l'écosystème DMV

Statut

Document de cadrage écosystème — version initiale.

Synthèse

DMV, pour Dans Mon Village, est l'application centrale d'un écosystème numérique local. L'objectif stratégique n'est pas de juxtaposer plusieurs outils isolés, mais de construire un ensemble cohérent autour d'un socle territorial commun.

L'écosystème doit permettre à chaque application de garder son interface, ses usages et son rythme d'évolution, tout en mutualisant les briques essentielles : identité, utilisateurs, acteurs, communes, publications, médias, droits, abonnements, statistiques, IA Gateway, notifications et services API.

Rôle des applications

ApplicationRôle principalAutonomie attendue
DMVSocle public local : mur de la ville, acteurs, publications, mini-sites, recherche, favoris, alertes, services communaux et espace utilisateur.Application centrale de l'écosystème, mais utilisable comme produit public local distinct.
PlayLoopAffichage dynamique local : écrans TV, vitrines, commerces, lieux publics, mairies.Application connectée mais autonome, y compris pour une commune non couverte par DMV.
AssoSuiteGestion associative : membres, cotisations, projets, publications et communication interne.Application connectée mais autonome, avec capacité de diffusion vers DMV lorsque le contexte le permet.
MairieInterface communale : informations, services, alertes citoyennes, publications mairie, modération locale et pilotage territorial.Application ou interface spécialisée pour les communes, adossée au socle territorial.
Futures appsNouveaux usages territoriaux encore à définir.Doivent s'intégrer au socle sans fragiliser les applications existantes.

Principe d'écosystème

Le socle commun doit éviter trois risques :

  • recopier les mêmes données dans plusieurs applications ;
  • créer des expériences déconnectées pour les utilisateurs ;
  • enfermer chaque application dans une logique technique ou produit isolée.

Chaque application doit répondre à un besoin clair. La cohérence vient des données partagées, des règles communes, des services API et d'une gouvernance produit lisible.

État actuel visible dans le code

Les éléments suivants sont visibles dans le workspace :

  • une API Laravel centrale dans api, organisée en modules actifs ;
  • des modules backend Laravel pour Identity, Territory, Actor, Publication, Community, Monetization, Settings, Analytics, PlayLoop, AssoSuite, Chat, Mairie et Admin ;
  • une application publique Next.js dans dmv-public, avec mur de la ville, annuaire par commune, composants de publications, espace utilisateur et pages publiques ;
  • un backoffice React/Vite dans dmv_backoffice, avec gestion des acteurs, communes, utilisateurs, publications, claims, statistiques, messages, plans, souscriptions, feature tabs et autres écrans d'administration ;
  • des migrations et Edge Functions Supabase dans dmv_backoffice/supabase et dmv-public/supabase ;
  • des accès Supabase encore présents dans les frontends.

Vision cible

La cible stratégique est une API Laravel centrale modulaire, servant de point de cohérence pour les applications de l'écosystème.

La cible ne signifie pas que chaque application doit partager la même interface. Au contraire :

  • les interfaces restent adaptées à leur métier ;
  • les données communes sont gouvernées par un socle partagé ;
  • les droits et rôles sont cohérents entre applications ;
  • les contenus peuvent circuler selon des règles explicites ;
  • les services transverses évitent la duplication technique.

État actuel vs cible

SujetÉtat actuel visibleCible documentaire
BackendAPI Laravel modulaire existante, modules actifs enregistrés.API centrale comme socle principal des applications.
SupabasePrésent dans les frontends, migrations et Edge Functions.État à clarifier progressivement, sans rupture non documentée.
DMV publicApplication Next.js visible.Porte d'entrée locale centrale.
PlayLoopModule backend Laravel visible.Application autonome d'affichage dynamique, connectable à DMV.
AssoSuiteModule backend Laravel visible.Application autonome de gestion associative, connectable à DMV.
MairieModule backend Laravel visible.Interface/application communale spécialisée.
Services partagésPlusieurs briques existent dans les modules.Catalogue explicite de services mutualisés et règles d'usage.

Principes d'autonomie

  • Une application doit pouvoir répondre à son usage principal sans dépendre d'un écran d'une autre application.
  • PlayLoop doit pouvoir fonctionner pour une commune non couverte par DMV.
  • AssoSuite doit pouvoir gérer une association même si la diffusion vers DMV n'est pas activée.
  • Mairie doit pouvoir gérer les contenus communaux dans un cadre dédié.
  • DMV doit rester le socle public local, sans absorber toutes les interfaces métier.

Principes de cohérence

  • Les communes, acteurs, utilisateurs, droits et publications doivent suivre des modèles communs.
  • Les contenus partagés entre applications doivent avoir une source claire.
  • Les permissions doivent être compréhensibles et auditables.
  • Les statistiques doivent permettre une lecture transverse sans mélanger les responsabilités.
  • L'IA, les notifications et les médias doivent être mutualisés quand cela réduit la complexité et améliore la fiabilité.