Licence et propriété

Le modèle open core de Fraza, ce que permettent la licence MIT et le contrat Fraza Pro, les contraintes qu'ils imposent au code, et la politique de licences des dépendances.

Fraza suit un modèle open core. Le socle est libre, sous licence MIT. Les modules d'affaires sont payants, sous le contrat Fraza Pro. Tout le code appartient à HYKO. Cette page explique le modèle et les contraintes qu'il impose au code.

Trois offres

OffrePaquetsLicence
Fraza Libre@fraza/core, @fraza/start, @fraza/module-pages, @fraza/module-posts, @fraza/module-medias, @fraza/module-forms, et le site de documentationMIT, gratuite
Fraza Pro@fraza-pro/module-billing, @fraza-pro/module-booking, @fraza-pro/module-driveContrat Fraza Pro, par projet en production et par année
Fraza CloudAucun paquet distinct : l'hébergement géré d'un projet FrazaContrat de service, à venir

Le principe : libre pour construire, payant pour opérer. Un client Pro paie le droit d'utiliser le module en production, plus les mises à jour, la conformité et le support.

Droit d'auteur et licence

Le droit d'auteur est automatique. Le code appartient à HYKO dès son écriture, sans dépôt ni formalité, par l'effet de la Loi sur le droit d'auteur du Canada et des traités internationaux. Le fichier LICENSE n'y ajoute rien.

Une licence fait l'inverse : elle accorde des permissions. Le fichier LICENSE de chaque paquet dit lesquelles. Pour Fraza Libre, c'est le texte standard de la licence MIT. Pour Fraza Pro, c'est un contrat de licence qui définit ce que le client a le droit de faire.

Le champ license du package.json suit la même séparation : "MIT" pour un paquet Fraza Libre, "SEE LICENSE IN LICENSE" pour un paquet Fraza Pro.

Fraza Libre : ce que permet la licence MIT

La licence MIT permet à quiconque d'utiliser, copier, modifier, fusionner, publier, distribuer, sous-licencier et vendre le logiciel, gratuitement, y compris dans un produit commercial ou propriétaire.

Elle demande une seule chose : la mention de droit d'auteur et le texte de la licence accompagnent toute copie ou toute partie substantielle du logiciel. Un projet qui redistribue @fraza/core, modifié ou non, garde donc le fichier LICENSE avec la mention Copyright (c) 2026 HYKO.

Elle exclut toute garantie. HYKO ne doit rien à un utilisateur de Fraza Libre au titre de la licence : ni support, ni correctif, ni responsabilité.

La licence MIT ne concède aucun droit sur la marque. « Fraza » est une marque de HYKO. Un fork peut reprendre le code, pas le nom.

Fraza Pro : ce que couvre le contrat

Le contrat Fraza Pro est livré dans le fichier LICENSE de chaque paquet Pro. Il est rédigé en français, et sa version figure en tête du fichier.

AutoriséInstaller et exécuter le module dans des environnements de développement et de test, avec des identifiants valides du registre.
AutoriséL'utiliser en production pour chaque projet couvert par une licence en cours de validité.
AutoriséÉtendre le module par les registres de modules, de widgets et de blocs.
AutoriséDévelopper pour un client et lui livrer l'application, si une licence couvre chacun de ses projets en production.
InterditUtiliser une même licence pour plus d'un projet en production.
InterditRedistribuer, republier sur un registre ou un dépôt, revendre, prêter.
InterditModifier le code, en dériver une œuvre, faire de l'ingénierie inverse.
InterditPartager les identifiants du registre.
InterditOffrir le module en service à un tiers qui n'a pas sa propre licence.
InterditDévelopper un produit concurrent, ou entraîner un modèle d'apprentissage automatique sur le logiciel.

La licence vaut pour un projet en production, identifié par son nom de domaine principal. Les instances qui servent le même projet (redondance, répartition de charge, reprise après sinistre) comptent pour un seul projet. Elle dure douze mois et se renouvelle par le paiement du prix de renouvellement. Sans renouvellement, le droit d'utilisation en production cesse pour ce projet, et les services aussi.

Pendant sa durée, la licence comprend trois services : les mises à jour publiées sur le registre, l'adaptation du module aux changements de règles qui le visent (taux de taxes, mentions obligatoires, protection des renseignements personnels), et le support par courriel. HYKO s'y engage selon une obligation de moyens. Le client reste responsable de ses propres obligations fiscales et légales.

Deux autres obligations pèsent côté client et se remarquent moins. Le code, la documentation non publique et les identifiants du registre sont confidentiels : l'obligation survit cinq ans à la fin du contrat, sans limite de durée pour le secret commercial. La résiliation n'est pas un simple arrêt d'usage : le client désinstalle le module, détruit toute copie y compris les sauvegardes, et l'atteste par écrit sous trente jours si HYKO le demande. Un client qui audite le contrat posera des questions sur ces deux points.

Le contrat ne vise que les paquets Pro. Il dit expressément qu'il ne restreint aucun des droits que la licence MIT accorde sur les paquets Fraza Libre, même utilisés avec un module Pro.

L'exception sur les registres d'extension est structurante. Un client qui déclare un widget ou un bloc ne modifie pas le module, il s'y branche. Le contrat le dit pour que la limite entre extension et modification ne se discute pas.

Contrainte sur le code : Libre ne dépend jamais de Pro

La frontière entre les deux licences est aussi une frontière dans le code.

Un paquet Fraza Libre n'importe jamais de code Fraza Pro. Ni import statique, ni import dynamique, ni copie d'un fichier. Un paquet MIT qui embarquerait du code Pro ne serait plus utilisable sous la seule licence MIT, et publierait du code payant sous une licence libre.

Le core ne requiert jamais un module Pro. Un projet doit fonctionner avec Fraza Libre seul. Les modules sont découverts à l'exécution, et le core ne nomme aucun module Pro dans son code ni dans ses dépendances.

L'inverse est permis : un module Pro dépend du core et peut s'appuyer sur les modules libres. C'est la direction normale de la dépendance, décrite dans Principes. Le core se branche sur des points d'extension, jamais sur un module précis.

Distribution par le registre

Les paquets sont distribués sur registry.fraza.ca, sous deux scopes. Les paquets Fraza Libre, sous @fraza, s'installent sans connexion. Les paquets Pro, sous @fraza-pro, demandent des identifiants nominatifs délivrés par HYKO. Pour eux, le registre est la vraie barrière : sans ces identifiants, le paquet n'est pas installable. L'administration des comptes et des droits est décrite dans Registre Verdaccio.

Un contrat n'empêche rien techniquement. Il ouvre un recours après la violation, à condition de pouvoir la prouver. Le contrat Pro donne ce recours, le registre empêche l'installation sans droit.

Le paquet publié ne contient pas src/. files ne livre que dist/, les fichiers légaux et quelques fichiers de support, et sourcemap: false dans tsup.config.js évite qu'une carte de source ne reconstitue le code original.

Une réserve à garder en tête : le build ne bundle pas et ne minifie pas, pour les raisons expliquées dans Build et exports. Le code livré dans dist/ reste lisible pour qui l'installe. Ne comptez jamais sur l'obscurcissement pour dissimuler un secret, une clé ou une logique de vérification de licence.

Chaque paquet porte son exemplaire

Chaque paquet @fraza/* et @fraza-pro/* est publié et installé séparément. Chacun embarque donc son propre LICENSE, son propre THIRD-PARTY-NOTICES.md et sa propre section « Licence » dans son README.md.

LICENSE et THIRD-PARTY-NOTICES.md figurent explicitement dans files, plutôt que de dépendre du comportement par défaut de npm. Pour un paquet MIT, la licence exige que sa mention accompagne chaque copie. Pour un paquet Pro, un paquet livré sans son contrat serait installé sans conditions opposables.

Le texte est identique à l'intérieur d'une même offre. Les paquets Fraza Libre portent tous le même texte MIT. Les paquets Fraza Pro portent tous le même contrat, qui ne nomme aucun paquet en particulier : la définition du « Logiciel » désigne le paquet accompagné du fichier. Une correction du contrat se propage donc à l'identique sur les trois dépôts Pro.

Politique de licences des dépendances

L'obligation joue aussi dans l'autre sens : HYKO respecte les licences des paquets dont dépend Fraza, libre ou Pro.

Aucune dépendance de production sous licence GPL, AGPL, SSPL, EUPL, CDDL, EPL, MPL, OSL ou CPAL. Ces licences imposeraient au client de publier le code source de son application, et rendraient la licence MIT de Fraza Libre trompeuse pour qui l'installe. npm run build:notices échoue et bloque la publication si l'une d'elles apparaît dans l'arbre.

Le copyleft faible, LGPL, est toléré à une condition : le paquet doit être un binaire chargé dynamiquement, jamais modifié ni lié statiquement. C'est le cas de sharp-libvips, tiré par Next.js pour l'optimisation des images. Le fichier de notices signale ces cas dans une section dédiée.

Le reste, MIT, ISC, BSD, Apache-2.0, ne pose pas de problème de compatibilité, avec la licence MIT comme avec le contrat Pro. Ces licences imposent seulement de reproduire leur mention de droit d'auteur dans ce qui est distribué.

Une nuance compte ici. Comme le build ne bundle rien, le paquet publié ne contient aucun code tiers : les dépendances sont installées séparément par le gestionnaire de paquets du client, depuis leurs sources d'origine. Elles ne sont couvertes ni par la licence MIT du paquet, ni par le contrat Pro. L'obligation d'attribution n'est donc pas déclenchée par la publication de Fraza. THIRD-PARTY-NOTICES.md reste généré et livré, pour deux raisons : prouver au client qui audite qu'aucune dépendance ne contamine son application, et lui fournir la liste dont il a besoin pour ses propres obligations, puisque son build Next.js, lui, bundle ces dépendances.

Le fichier est régénéré à chaque build depuis l'arbre réellement installé, pas depuis les dépendances déclarées. Il ne se modifie jamais à la main. Le script lit le champ license du package.json pour nommer la bonne licence dans son introduction.

Contributions

Un salarié cède ses droits à son employeur dans le cadre de ses fonctions. Un pigiste, un stagiaire, un associé ou un contributeur bénévole, non : il reste titulaire du droit d'auteur sur le code qu'il écrit, sauf cession écrite et signée.

Fraza Libre : la licence entrante est la licence sortante. En proposant une contribution à un paquet MIT, le contributeur accepte qu'elle soit publiée sous la licence MIT de ce paquet. Il garde son droit d'auteur, et HYKO reçoit les mêmes droits que tout le monde. Conséquence : une contribution reçue sous MIT ne peut pas être déplacée dans un paquet Pro sans l'accord écrit de son auteur.

Fraza Pro : toute contribution provenant d'une personne extérieure à HYKO exige une cession de droits écrite et signée en faveur de HYKO, avant la fusion. Sans ce document, une partie du code Pro n'appartient pas à HYKO, ce qui compromet la vente des licences, la revente de l'entreprise et la capacité à agir contre une contrefaçon.

L'adresse postale ne figure pas dans le contrat

Le fichier LICENSE est livré dans chaque paquet et se retrouve sur le disque de chaque client. Y inscrire une adresse personnelle serait la publier à tous.

Un contrat n'a besoin que de deux choses sur ce plan : savoir qui concède la licence, et disposer d'un canal pour les avis formels. Le contrat Pro désigne le courriel [email protected] comme ce canal, avec une règle de réception présumée. Les vulnérabilités se signalent à [email protected]. L'adresse postale et l'identité légale complète sont fournies sur demande écrite, et figurent au contrat commercial signé, qui est un document privé échangé avec un client payant.

Le siège de l'arbitrage relève de la même logique. Fixé à Québec (Québec), Canada, c'est une ville, pas une adresse : il désigne le district judiciaire de rattachement, et n'expose rien.

Notes

La licence MIT est le texte anglais standard. On ne la traduit pas : une traduction ferait une licence différente, que les outils d'audit ne reconnaîtraient plus.

Le contrat Fraza Pro est rédigé en français uniquement. La Charte de la langue française impose le français pour les contrats conclus au Québec, et le contrat acte que les parties l'ont exigé. Un client anglophone qui demande une version anglaise obtient une traduction annexée au contrat commercial signé, pas un second LICENSE livré dans le paquet : deux textes en circulation, c'est deux interprétations possibles.

La loi du Québec et l'arbitrage s'appliquent au contrat Pro, pas à la licence MIT. Le contrat Pro prévoit un arbitrage à Québec plutôt qu'une attribution de compétence à un tribunal. Cette clause évite qu'un client étranger n'attraie HYKO devant sa propre juridiction. Elle ne joue pas contre un consommateur au sens de la Loi sur la protection du consommateur, qui l'interdit, ni pour obtenir une injonction en urgence contre une atteinte à la propriété intellectuelle.

Les clauses d'exclusion de garantie et de limitation de responsabilité du contrat Pro comportent une réserve d'ordre public. L'article 1474 du Code civil du Québec interdit d'écarter sa responsabilité pour faute intentionnelle ou lourde, et pour préjudice corporel ou moral. Une clause qui l'ignorerait serait écartée en bloc par un tribunal.

Ce document décrit un dispositif contractuel, il ne constitue pas un avis juridique.

Sur cette page