Louis
ArchitectureDécisions (ADR)

ADR 0002 — Licence AGPL-3.0-or-later

Choisir la licence d'un projet open-source destiné à des professionnels juridiques. Options principales :

  • Statut : adopté
  • Date : 2026
  • Décideur : association DataRing

Contexte

Choisir la licence d'un projet open-source destiné à des professionnels juridiques. Options principales :

  1. MIT / BSD / Apache 2.0 — permissive. Un éditeur tiers peut prendre Louis, le modifier, et le vendre en SaaS sans rendre les améliorations à la communauté. Risque : fork commercial qui devient "Louis Pro" propriétaire.
  2. GPL-3.0 — copyleft. Toute redistribution du binaire doit inclure le code source modifié. Mais l'usage en SaaS (ne distribue pas de binaire au client final) échappe à l'obligation.
  3. AGPL-3.0-or-later — copyleft renforcé. Tout usage réseau (un serveur public) déclenche l'obligation de publier les modifications. Couvre le cas SaaS.

Décision

AGPL-3.0-or-later.

Louis est conçu pour être auto-hébergé, mais rien n'empêche un acteur de le wrapper en SaaS. Sous AGPL, ce SaaS doit publier ses modifications, ce qui garantit que la version "officielle" de Louis bénéficie de toutes les améliorations.

Conséquences

Positives

  • Garantit qu'il n'y aura jamais de fork "Louis Pro" propriétaire avec des features cachées
  • Les contributions des hébergeurs SaaS reviennent à la communauté
  • Aligné avec les valeurs du projet (souveraineté, transparence, collectif)
  • Compatible avec une utilisation interne d'un cabinet (l'usage privé / interne n'est pas une "distribution" au sens AGPL — un cabinet qui adapte Louis pour ses besoins sans publier rien d'externe n'a aucune obligation de publication)

Négatives

  • Effet repoussoir potentiel pour les éditeurs commerciaux qui voudraient intégrer Louis dans un produit propriétaire — ce qui est précisément le but
  • Incompatibilité avec certains projets sous licence permissive qui voudraient consommer du code Louis (rare en pratique pour une app full-stack)

Implications

  • Chaque PR contributor signe via DCO (git commit -s) qu'elle accepte la redistribution sous AGPL-3.0-or-later
  • Pas de Contributor License Agreement (CLA) séparé — la DCO suffit
  • Le LICENSE file contient le texte complet AGPL-3.0
  • Le job CI licenses (cf. .github/workflows/ci.yml) bloque toute dépendance sous licence incompatible

On this page