Mini-Js — pourquoi j'ai écrit mon propre micro-framework

Avril 2025 · Lecture ∼4 min

En 2023, j'ai pris une décision que certains de mes collègues ont jugée étrange : j'ai écrit mon propre micro-framework JavaScript. Pas par égo, pas par envie de réinventer la roue, mais parce que j'étais confronté à un problème concret que les solutions existantes ne résolvaient pas bien.

Ce problème, c'était la modernisation de projets PHP legacy sans refonte complète.


Le constat

J'interviens régulièrement sur des projets PHP qui ont 10, 15, parfois 20 ans. Des codebases monumentales, souvent en procédural ou en MVC maison, avec des templates mélangeant PHP et HTML. Moderniser ces projets avec React ou Angular, c'est un chantier titanesque : nouveau build system, nouveau routing, nouvelle architecture, formation des équipes...

Mais en parallèle, les besoins métiers évoluent : on veut des composants interactifs, des mises à jour en temps réel, des interfaces réactives. La question était : comment apporter ces fonctionnalités modernes sans tout casser ?

La réponse : un micro-framework JS de moins de 5 Ko, intégrable via une simple balise <script>.


Ce que fait Mini-Js

Mini-Js n'essaie pas de concurrencer React ou Angular. Il résout un problème spécifique :

Concrètement, voici à quoi ça ressemble :

<div m-app>
  <div m-state="{ count: 0 }">
    <button @click="count--">-</button>
    <span>{{ count }}</span>
    <button @click="count++">+</button>
  </div>
</div>

Pas de JSX, pas de virtual DOM, pas de webpack. Une balise script et c'est parti.


La philosophie

Mini-Js repose sur une idée simple : le framework doit s'adapter au projet, pas l'inverse. Dans un monde où la tendance est à l'accumulation de couches d'abstraction, Mini-Js fait le pari inverse : rester proche du DOM, utiliser les standards du web, et ne rien cacher.

Le code source est volontairement court (moins de 1000 lignes) et lisible. Pas de magie noire, pas d'abstraction opaque. Chaque fonctionnalité est documentée et testée.

Les retours que j'ai eus depuis sa mise en ligne sont intéressants : des développeurs PHP l'utilisent pour ajouter de l'interactivité à leurs projets legacy, des intégrateurs l'apprécient pour sa simplicité, et même quelques agences web l'ont adopté pour des projets internes.


Ce que j'en ai appris

Écrire un framework, même modeste, est une expérience formatrice. J'ai dû réfléchir à :

C'est aussi une excellente pièce à ajouter à son portfolio. Un candidat qui a écrit et maintenu son propre framework — même modeste — montre une compréhension profonde des mécanismes sous-jacents.


Conclusion

Mini-Js n'est pas un framework pour tout le monde. Si vous démarrez un projet greenfield, utilisez React, Vue ou Angular. Mais si vous maintenez un projet PHP legacy qui a besoin d'un coup de jeune, Mini-Js pourrait bien être l'outil qu'il vous faut.

Et si vous êtes curieux, le code est open source : minijs.jnk.ovh

← Retour au blog