Premier retour d’expérience sur Mean.io

Qu’y a-t-il dans Mean.io ?

Mean.io est une solution full-stack JavaScript pour la création d’applications Web. Elle permet de construire des applications rapidement, robuste et facile à maintenir.

MEAN signifie MongoDB, Express, AngularJS et NodeJS.

Elle s’appuie également sur les framework Grunt, Bower et NPM. Ce sont des outils de management de projet technique. NPM et Bower permettent de récupérer les dépendances. Bower sert plus spécifiquement à obtenir les composants front-end tels que HTML, CSS et JS. Grunt, est un outil JavaScript de type Task Runner. Il permet par exemple de compresser des fichiers, vérifier la bonne syntaxe des fichiers JavaScript ou encore minifier les fichiers JavaScripts et CSS. Ces outils permettent d’avoir une plateforme de développement robuste.

MEAN.io permet d’éviter du travail inutile et des pièges courants (tout en gardant l’application organisée). De plus, il fournit des bonnes pratiques concernant la structure des fichiers.

Comment travailler avec Mean.io ?

En fait, avec 2-3 commandes, toute la structure du projets est posée :
– sudo npm install -g meanio@latest // Get the mean cmdline
– mean init myApp // create your first app
– cd myApp && npm install // Install dependencies
– grunt // Launch mean
On ne passe pas 1 journée à poser toute la structure du projet. Ceci est déjà fait et on peut directement se focaliser sur la création de modules pour l’application.

En moins de 30 min, une application de test est prête (CRUD en plus). Cela permet d’obtenir une application prototype rapidement.

Avec une commande supplémentaire (« mean package myModule »), on peut créer automatiquement les fichiers nécessaires (html, css, js) pour son propre module. MEAN prend en compte automatiquement ce nouveau module et l’intègre automatique dans l’application. On peut directement faire les modifications pour les besoins spécifiques.

MEAN.io unifie Front End et Back End (utilisation de Express pour le serveur). Avec cette technologie, seul le language JavaScript est requis. Pas besoin d’autres compétences (sauf peut être HTML et CSS).

MEAN.io intègre par défaut le framework PassportJS qui est un framework d’authentification JavaScript. On ne se préoccupe ainsi pas d’authentification, tout est déjà mis en place.

On trouve maintenant divers frameworks pour différents besoins (exemple: framework de mail avec du templating HTML+velocity : nodemailer + email-templates). Avec NPM et Bower, ces frameworks sont facilement intégrés à l’application. Plus besoin d’aller les chercher sur leurs sites respectifs, ils sont automatiquement téléchargé dans la bonne version.

La partie qui nous a pris le plus de temps a été la conception HTML du site avec Bootstrap.

Mean.io ou Mean.js ?

Les 2 solutions sont identiques sauf pour la structure des fichiers du projets.

Nous avons choisi MEAN.io plutôt que MEAN.JS du fait de la taille de la communauté. MEAN.JS est encore trop récent pour être utilisé. MEAN.io est désormais animé par Linnovate. Le créateur est lui parti de cette entreprise et a fondé MEAN.JS (http://blog.meanjs.org/post/76726660228/forking-out-of-an-open-source-conflict ). D’après certains témoignages, les dev de MEAN.io sont assez novices comparés au fondateur (multiples réarrangements des fichiers par exemple). A suivre donc …

You may also like...

Laisser un commentaire