← Tous les projets 01 — SaaS B2B

Planora

SaaS multi-tenant de gestion de chantier pour les pros belges de la construction. Porté en autonomie de l'architecture à la mise en staging.

Rôle
Lead & seul dev
Année
À compléter
Type
SaaS B2B
Statut
Bêta interne
capture produit — planora dashboard
Contexte

Le point de départ.

Un chantier de construction mobilise un entrepreneur général, un architecte, un client final et plusieurs sous-traitants. Aujourd'hui, chacun travaille avec ses propres outils — Excel, mails, photos sur WhatsApp, agenda Outlook — et personne n'a la vue d'ensemble en temps réel. La partie administrative (devis, factures, gestion d'équipe, fiches de présence) est traitée en parallèle, sur d'autres outils encore.

Planora unifie ces flux dans un seul espace : suivi de chantier, coordination entre intervenants, gestion administrative et opérationnelle. Le produit est destiné à être commercialisé en SaaS auprès des entrepreneurs belges du BTP.


Mon rôle

De bout en bout.

Seul développeur sur le projet depuis son démarrage. J'ai cadré l'architecture technique, choisi la stack et porté tout le développement — frontend, backend, modèles de données, infrastructure — du greenfield à la mise en staging. Le cadrage fonctionnel a été mené en duo avec le CEO de Dimagin Studio, en lien direct avec le client.

Étapes assumées

  1. 01 Discovery & cadrage fonctionnel avec le client
  2. 02 Choix d'architecture & schéma de données
  3. 03 Développement fullstack
  4. 04 Déploiement & infrastructure

Approche & choix d'architecture

Monorepo Turborepo

Le scope produit est large (chantiers, photos, calendrier, équipes, outils, facturation en roadmap) et inclura à terme une app mobile. J'ai choisi un monorepo Turborepo pour mutualiser le code typé entre frontend Next.js et backend NestJS — types Prisma, schémas Zod, helpers métier — et préparer le terrain pour les futures applications partageant la même base.

Multi-tenant via tenant_id

Chaque compte entrepreneur est un tenant indépendant. L'isolation des données est assurée par un tenant_id propagé sur les tables métier, et des guards NestJS qui injectent et vérifient le tenant à chaque requête. Un déploiement unique sert tous les clients, sans risque de fuite de données entre comptes.

RBAC custom multi-rôles

Le produit gère plusieurs types d'utilisateurs : entrepreneur (vue globale), architecte (chantiers + facturation), membres d'équipe internes, et intervenants externes invités sur un chantier (architectes tiers, sous-traitants, clients finaux), avec des permissions granulaires (lecture seule, modification, ajout de médias). J'ai implémenté un système de rôles côté backend avec guards et vérifications à plusieurs niveaux (route, donnée, action), plutôt que de m'appuyer sur une lib RBAC tierce — pour garder la souplesse sur des cas métiers spécifiques.

Gestion des médias chantier

Upload multi-utilisateur en parallèle, organisation en dossiers, commentaires sur photo et sur dossier. J'ai capitalisé sur des patterns d'asset management éprouvés sur mes projets e-commerce précédents (signed URLs, optimisation des uploads, stockage objet).


Modules livrés

Chantier — Création et listing par statut (en cours, à venir, finis), diagramme de Gantt, système de postes (menuiserie, maçonnerie, plâtrerie…) avec assignation d'intervenants, invitation d'intervenants externes via lien avec permissions granulaires, discussion de groupe par chantier.

Photos — Upload multi-utilisateur, organisation en dossiers, commentaires sur médias et dossiers.

Calendrier — Vue calendrier interne, tâches synchronisées.

Équipes — Gestion des membres, modification des accès par membre, fiches de présence avec export vers le secrétariat social.

Outils — Inventaire des outils et machines de l'entreprise, dispatch et tracking par membre d'équipe.


Stack
  • Next.js 16
  • TypeScript
  • NestJS
  • Prisma
  • PostgreSQL 17
  • BullMQ + Redis
  • Better Auth
  • Meilisearch
  • Cloudflare R2
  • PostHog
  • Sentry
  • Turborepo
  • Dokploy
  • Docker Swarm
  • Traefik

Roadmap

Les chantiers techniques majeurs des prochaines versions :

  • Identification ITSME OIDC (identité numérique belge)
  • Facturation Peppol (e-invoicing B2B, obligation belge depuis janvier 2026)
  • Synchronisation des calendriers externes via Nylas (iCloud, Google, Outlook)
  • Signature électronique des devis
  • Personnalisation white-label des devis et factures

Apprentissages clés

Sur ce projet, j'ai cadré l'architecture de bout en bout en autonomie : stack, modèles de données, multi-tenant, RBAC, infrastructure. Le scope produit (ERP + CRM + gestion de projet + RH) m'a forcé à penser chaque décision sur le long terme, pas comme un MVP jetable. C'est l'expérience qui m'a fait le plus progresser sur les sujets d'architecture.


Résultats
  • ↳ staging Livré et opéré en autonomie, mise en prod prévue prochainement
  • 5 modules Chantiers, photos, calendrier, équipes, outils

Un projet en tête ?

Ouvert aux opportunités — boîte produit, CDI.

Me contacter