Tous les articles
Jeu. 20 août 2026·7 min de lecture

🧩 Optimus UI : quand la communauté Angular reprend PrimeNG à son compte

Schéma : le code MIT de PrimeNG v21 se sépare le 29 juin 2026 en deux branches, PrimeNG 22 sous licence PrimeUI avec clé requise et Optimus UI 2.0.0 sous licence MIT

📚 Introduction

Trois dates racontent toute l’histoire. Le 29 juin 2026, PrimeTek archive le dépôt primefaces/primeng et annonce que ses prochaines majeures passeront sous licence commerciale. Le 15 juillet, PrimeNG 22 sort avec une licence qui réclame une clé. Le 18 août, avant-hier, un fork communautaire publie sa propre version 2.0.0, compatible Angular 22, sous licence MIT.

Ce fork s’appelle Optimus UI. La décision de PrimeTek se défend très bien : dix ans de bibliothèque MIT maintenue, ça se finance. Ce qui m’intéresse ici, c’est l’autre bout de la chaîne. Quand un éditeur ferme la porte, que faut-il exactement pour qu’une poignée de bénévoles reprenne 80 composants et les tienne à jour ? Optimus UI en donne une réponse datée, mesurable, et pas toujours confortable.

🔎 Pourquoi un éditeur ferme-t-il une bibliothèque MIT ?

Parce que le modèle add-on ne suffisait plus à payer l’équipe. PrimeTek regroupe désormais PrimeNG, PrimeReact et PrimeVue sous une marque unique, PrimeUI, avec une licence maison.

Le point que tout le monde comprend de travers : le MIT déjà acquis reste MIT, et ce pour toujours. Le changement n’est pas rétroactif. Seules les prochaines majeures sont concernées, PrimeNG 22, PrimeReact 11 et PrimeVue 5, et PrimeFaces reste open source.

La bascule se lit dans les paquets npm plutôt que dans les communiqués. primeng@21.1.9, publié le 4 juin 2026, embarque un LICENSE.md qui commence par « The MIT License (MIT) », copyright PrimeTek 2016-2026. Les 22.0.0 et 22.1.0 embarquent un fichier intitulé « PrimeUI License », qui pose la règle noir sur blanc :

A valid license key is required to use this software. License verification is performed offline, with no telemetry and no remote connection. A missing, invalid, or expired key may cause the software to display a license notice.

Clé obligatoire, donc, mais vérifiée hors ligne et sans télémétrie. C’est le minimum syndical d’un éditeur correct, et il a été respecté.

Côté tarif, la Community License est gratuite pour qui coche quatre critères à la fois : moins d’un million de dollars de chiffre d’affaires annuel, moins de cinq développeurs, moins de dix salariés, moins de trois millions levés. Les individus, les étudiants, les associations et l’open source non commercial entrent aussi dans le cadre. Au-delà, c’est 599 $ par développeur en perpétuel avec un an de mises à jour, 799 $ à partir de 2027, puis 399 $ par développeur et par an pour continuer à recevoir les versions. Des seuils à vérifier soi-même sur le texte de la licence, pas à estimer au doigt mouillé.

🧩 Ce qu’il faut pour reprendre un projet

L’organisation openng-org publie Optimus UI comme la continuation communautaire de PrimeNG v21 sous licence MIT. À l’heure où j’écris, le dépôt affiche 562 étoiles et 68 forks. Derrière, un petit groupe de bénévoles ; OpenNG paie l’hébergement et le domaine. Aucun palier payant, aucun prévu, et de toute façon impossible : on ne relicencie pas du code MIT reçu d’un tiers.

Le renommage est la première facture à payer, et elle est juridique. PrimeNG, PrimeFaces et PrimeFlex sont des marques déposées de PrimeTek. Il a donc fallu rebaptiser les paquets npm, la cascade layer CSS et la bibliothèque d’icônes, tout en conservant les notices de copyright d’origine. Le cœur devient @openng/optimus-ui, entouré de -themes (les presets Aura, Material, Lara et Nora), -styled, -tailwindcss, -motion, -styles, -utils, plus les locales i18n. Les icônes partent dans @openng/icons, avec un choix malin : les classes pi pi-{icon} restent identiques, donc les templates ne bougent pas. PrimeFlex n’est pas repris ; le projet renvoie vers Tailwind CSS, qu’il intègre officiellement.

Reprendre un projet, c’est aussi récupérer le travail en cours. Les pull requests restées ouvertes sur le dépôt archivé se rapatrient en ajoutant .patch à leur URL :

PR=1234
curl -sL "https://github.com/primefaces/primeng/pull/$PR.patch" | git am

Les imports ayant été renommés, attends-toi à résoudre des conflits. Le scénario est celui d’OpenTofu rejoué côté frontend, à un détail près sur lequel je reviens plus bas.

🗓️ Le prix du rattrapage

La chronologie npm tient en trois lignes : première release candidate le 21 juillet 2026, 1.0.0 le 3 août, 2.0.0 le 18 août. Champ license : MIT. Le versionnage est sémantique et les majeures suivent celles d’Angular, la v1 visant Angular 21 et la v2 Angular 22. Ce n’est pas une intention affichée dans un README, c’est écrit dans le paquet :

{
	"peerDependencies": {
		"@angular/cdk": "^22.1.2",
		"@angular/common": "^22.1.2",
		"@angular/core": "^22.1.2",
		"@angular/forms": "^22.1.2",
		"@angular/platform-browser": "^22.1.2",
		"@angular/router": "^22.1.2"
	}
}

Les notes de la 2.0.0 tiennent en trois entrées : passage à Angular v22, ajout du support de ng update, correction de la détection de projet dans les schematics. La deuxième compte plus que sa formulation ne le laisse croire, puisqu’elle branche le fork sur la commande de mise à jour standard.

Maintenant, la mesure honnête. Angular 22 est sorti le 3 juin 2026. PrimeNG a publié sa propre 22.0.0 le 15 juillet, six semaines plus tard. Optimus UI a rattrapé le 18 août, deux mois et demi après Angular. Le fork suit, il ne devance pas, et pour qui doit évaluer la viabilité du projet ce délai est l’information la plus utile de tout l’article.

🚀 Passer de l’un à l’autre

L’installation emprunte les rails Angular habituels, ce qui compte quand on migre une application entière :

# Nouveau projet
ng add @openng/optimus-ui
 
# Projet existant, déjà en PrimeNG v21
npm install @openng/optimus-ui
ng generate @openng/optimus-ui:migrate-from-primeng

Le schematic réécrit les imports, remplace les dépendances et rapporte les étapes manuelles restantes. C’est la formulation du projet et je la garde telle quelle : personne ne promet un zéro-touche. Pour un rappel sur ng add, ng generate et ng update, j’ai détaillé le tooling Angular dans un article précédent.

Un prérequis à ne pas rater : sur une base en PrimeNG v20 ou antérieure, il faut d’abord monter en v21 avec les guides de migration de PrimeTek, puis lancer le schematic. La dernière marche sous licence MIT se franchit donc chez l’éditeur qu’on s’apprête à quitter.

⚠️ Quelques précautions

  • Ce qui n’est pas dans le fork n’y sera pas. Theme Designer, templates et blocks n’ont jamais été MIT : ils sont hors périmètre, et le projet annonce qu’il ne les réimplémentera pas. Si ton design system s’appuie dessus, le fork ne te couvre pas.
  • La gouvernance est le vrai risque. OpenTofu a rejoint la Linux Foundation le mois suivant sa création, en septembre 2023. Optimus UI repose sur un petit groupe de bénévoles et une organisation qui paie le nom de domaine. Le code est sauvé, la structure qui le porte reste à construire.
  • Les seuils de la Community License se franchissent. Le renouvellement est annuel et déclaratif. La boîte qui passe cinq développeurs ou le million de chiffre d’affaires bascule côté commercial. Choisis sur ta trajectoire, pas sur la photo du jour.
  • Rester en PrimeNG v21 reste défendable. MIT à vie, mais figée : pas d’Angular 22 par ce chemin-là.

🎉 Conclusion

Trois situations, trois réponses. Indépendant ou petite structure éligible : la Community License de PrimeUI est gratuite et te laisse sur la voie officielle, celle qui a rattrapé Angular 22 un mois avant le fork. Besoin d’une dépendance MIT auditable, sans clé à gérer ni éligibilité à redéclarer chaque année : Optimus UI fait le travail depuis le 18 août. Application en PrimeNG v20 ou moins : la montée en v21 est le premier ticket à écrire, quelle que soit la suite.

Reste une leçon qui dépasse PrimeNG. Angular livre ses briques dans un train de versions unique, et c’est tout l’argument du framework complet. La bibliothèque de composants, elle, n’a jamais fait partie de ce train : elle vit chez un éditeur tiers, avec son modèle économique. Ça vaut le coup de regarder qui maintient la sienne avant que la question ne se pose en urgence.

🔗 Liens utiles

/faq

Questions fréquentes

PrimeNG est-il encore open source ?

+

Les versions déjà publiées sous licence MIT le restent définitivement : le changement n'est pas rétroactif, et PrimeNG v21 est la dernière majeure MIT. À partir de PrimeNG 22, publié le 15 juillet 2026, le paquet npm embarque une licence PrimeUI qui exige une clé. PrimeFaces, lui, reste open source.

Qu'est-ce qu'Optimus UI ?

+

C'est la continuation communautaire de PrimeNG v21 sous licence MIT, publiée par l'organisation OpenNG sur github.com/openng-org/optimus-ui. Le code est celui de PrimeNG v21, rebrandé pour des raisons de marque, avec les notices de copyright d'origine conservées. Le projet n'est ni affilié ni sponsorisé par PrimeTek et n'a aucun palier payant.

Optimus UI supporte-t-il Angular 22 ?

+

Oui, depuis la version 2.0.0 publiée le 18 août 2026, dont les peerDependencies pointent sur @angular/core en ^22.1.2. Les majeures d'Optimus UI suivent celles d'Angular : la v1 vise Angular 21, la v2 Angular 22. La 2.0.0 ajoute aussi le support de ng update.

Pourquoi Optimus UI a-t-il renommé tous les paquets ?

+

Pour une question de marques déposées : PrimeNG, PrimeFaces et PrimeFlex appartiennent à PrimeTek. Les paquets npm, la cascade layer CSS et la bibliothèque d'icônes ont donc dû changer de nom. Les classes d'icônes « pi pi-{icon} » sont en revanche conservées telles quelles, pour éviter de toucher aux templates.