Méta-paquets
NPM

Le problème

  • Beaucoup de modules NPM/projets NodeJS
  • JavaScript/NodeJS évoluent trop vite
  • Fastidieux de maintenir tous les projets/modules à jour

Quelques exemples

Exploiter les nouveautés

Faciliter son dev

Gérer les informations
répétitives

  • Licences.
  • Liens, adresses mail, identités.

Mon constat

«Embrasser les nouveautés/évolutions de

mon environnement de développement

sur tous mes modules prendrait trop de temps.»

Résultat

  • Des ajouts au grés des mises à jour
  • Des oublis, des erreurs
  • Une grande disparité de mes environnements de dev

Approches possibles

Un simple script ?

  • Tout ou rien, peu pratique
  • Nécessite de cloner tous ses repos

Outils de scaffolding ?

  • Peu pratique pour l'éxistant
  • Beaucoup de partis pris
  • Difficile à maintenir
  • Nécessite une installation globale

Que faire ?

Metapak

Objectifs

  • simplicité: setup en une commande
  • souplesse: pas de figure imposée
  • transversal: modifier les informations générales à tous les projets/modules JavaScript quels qu'ils soient

Hands-on

Créer son module `metapak` en 5mn

Avantages

  • Installé: dépendence clairement exprimée,
    pas d'install globale, 0 setup pour les
    contributeurs.
  • Versionné: possibilité de mettre à jour
    au compte goutte.
  • Configurable: créer des configurations
    spécifiques : frontend, cli etc...

Inconvénients

  • une modification = deux commits,
    une version
  • seuil de rentabilité à 5-10 projets

Merci !

@nfroidure sur Twitter et GitHub

Méta-paquets NPM

By Nicolas FROIDURE

Méta-paquets NPM

Comment appliquer vos préférences sur plusieurs projets NodeJS / modules JavaScript.

  • 4,805