Mon premier projet Meteor

Je m'intéresse depuis plusieurs mois à Meteor, j'ai d'ailleurs rédigé un article sur cette technologie il y à quelques temps. Pour me former, j'ai travaillé pendant plusieurs semaines sur un petit projet, le but de ce post est de vous présenter les différents packages utilisés pour le développer.

La structure du projet : Iron scaffolding

Iron-cli scaffolding permet de générer une arborescence claire afin de bien différencier les couches de l'application. Pour installer iron-cli il suffit de lancer la commande suivante :

$ npm install -g iron-meteor

Iron est en fait un wrapper, au lieu d'utiliser les commandes "meteor" (meteor update, meteor run etc.) il faut utiliser la commande "iron" (run, update…). Pour créer un projet, il suffit donc de lancer la commande suivante :

$ iron create monProjet

La structure suivante est générée :

| .iron                     // iron configuration folder
| app                       // Meteor application folder
| bin                        
| build                     // builds of your applications 
| config                    // environment configuration 
   |----- development/
     |--- env.sh
     |--- settings.json

L'intégralité du code sera dans le dossier app.

Iron-cli permet également de générer automatiquement les contrôleurs et les vues avec une simple ligne de commande.

Pour plus d'informations sur iron-cli, ça se passe ici : https://github.com/iron-meteor/iron-cli.

Sécurisation du projet

Afin de sécuriser l'accès aux données et de gérer manuellement la publication des collections, j'ai désactivé les packages autopublish et insecure :

	$ iron remove autopublish 
	$ iron remove insecure 

Les packages

Vous trouverez, ci-dessous, la liste des différents packages utilisés ainsi qu'un petit descriptif des fonctionnalités. Pour installer un package, rien de plus simple :

	$ iron add nomDuPaquet
  • iron:router : système de routing pour meteor
  • twbs:bootstrap : ajout de twitter bootstrap
  • accounts-password : gestionnaire de sign in / sign up
  • ian:accounts-ui-bootstrap-3 : couche twitter boostrap pour le package accounts-password
  • aldeed:collection2 : permet de gérer les étapes de base d'un CRUD
  • aldeed:autoform : pour la génération automatique de formulaire
  • tap:i18n : pour la traduction
  • aldeed:delete-button : ajout d'un bouton delete pour supprimer des éléments d'une collection
  • risul:bootstrap-colorpicker : color picker
  • lawshe:full-page : librairie fullpage.js
  • tomi:upload-server et tomi:upload-jquery : pour l'upload des images
  • sacha:spin : permet d'afficher un petit gif pendant les chargements

Le projet

Au final, mon projet est un modeste générateur de faire-part disponible à cette adresse : http://std-generator.com.

Comme tout premier projet, il est loin d'être parfait, mais il a le mérite d'être là cheeky. Je considère ce site comme une version Beta du projet, s'il trouve son public, je le ferais évoluer.

La suite ?

J'ai pris du plaisir à travailler avec meteor, mais alors que je commençais à être à l'aise avec le moteur de templating Blaze, voilà que les créateurs de meteor envisage très sérieusement de le remplacer par React.js ; il semblerait donc que je doive me mettre à React ! J'aimerai également utiliser meteor pour réaliser des applications mobiles.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

code