====== Grunt ====== ===== Abstract ==== Grunt est un "task runner" il permet l'**automatisation de tâche récurrentes** telle que uglify ou less. Il permet aussi de créer des process (deploiement, developpement, ...). Grunt offre un watcher, c'est à dire un **service temps reel** qui detecte des modifications de code et executes des tâches à la volé (très utile pour less). La documentation officielle de Grunt est disponible [[http://gruntjs.com/getting-started|ici]] ===== Tasks ===== ^ Module ^ Task | ^ Less | css-preprocessor, convertis les fichiers Less depuis le dossier less/ vers public/css | ^ Uglify | Minifieur JS, concatene et reduis au maximum les fichiers javascript depuis js/ vers public/js | ^ Watch | watcher, il scrute les modifications de code dans les dossiers js/ et less/ afin d'executer les tâches relatives aux scripts et styles | ^ Bower | gestionnaire de libraire css, execute bower et install les dépendances demandées dans js/lib | ^ SiteMap | genère la sitemap du site depuis les PHP present dans le dossier public/ | ^ composer | gestionnaire de modules PHP, execute composer et install les modultes dans vendor/ | ===== Commandes ===== ==== watcher ==== grunt watcher lance la tâche : **Watch** ==== Build ==== grunt build lance les tâches : **composer:install**, **bower**, **less**, **uglify** ==== Deploiement ==== grunt deploy lance les tâches : **composer:update**, **bower**, **less**, **uglify**, **sitemap**