Installer et utiliser NodeJS et le module Less sur Mac OS X

Connaissez-vous LESS ? Il s’agit d’une sur-couche de CSS apportant son lot d’améliorations pour faciliter l’écriture de feuille de styles. LESS vous permettra par exemple de définir des fonctions ou des variables que vous pourrez utiliser dans vos règles CSS. Pour en savoir plus, n’hésitez pas à consulter le site officiel de LESS.

Pour utiliser LESS sur vos sites internet, vous devez « convertir » vos fichiers LESS en CSS afin que les styles soient interprétés par les navigateurs web. Le site officiel propose deux solutions, soit réaliser la conversion côté client avec le navigateur, soit côté serveur avec nodejs. La 1ère solution rend votre site web dépendant l’activation de Javascript par le visiteur, ce qui n’est pas une très bonne idée. J’ai donc choisi la solution « serveur »…

Installation de NodeJS et LESS

Nous allons voir ici comment installer NodeJS et le module less sur Mac OS X 10.6 (et 10.7) avec MacPort. L’installation de MacPort devra préalablement être réalisée.

  1. Commencez par installer NodeJS avec MacPort en utilisant la commande suivante :
    port install nodejs
  2. Installez maintenant NPM avec la commande ci-dessous. NPM est un gestionnaire de packages/modules pour Node permettant de facilité l’installation de modules.
    sudo port install npm
  3. Une fois l’installation de NPM terminée, procédons à l’installation du module LESS pour NodeJS. A noter la présence du « -g » dans la commande afin de précéder à une installation globale (pour tous les utilisateurs)
    sudo npm install less -g
  4. Vous avez terminé l’installation de NodeJS, NPM et LESS

Utilisation

Écrivez un fichier less. Vous pouvez prendre un exemple du site officiel par exemple.

lessc styles.less

Conclusion

Voilà, vous êtes maintenant fin prêt pour l’utilisation de LESS dans vos projets web. Je vous recommande de faire un tour sur GitHub où vous trouverez des fichiers LESS pour facilité l’utilisation CSS3 sur les principaux navigateurs.

Personnellement, j’utilise LESS depuis presque 1 an et c’est un réel plaisir d’écrire des styles CSS avec un tel outil. Essayez-le !

Installer Apache 2, MySQL 5 et PHP 5.3 sur Mac OS 10.7 Lion avec MacPort

Bien que Apache et PHP soient pré-installés sur Mac OS X, j’évite depuis plusieurs années de les utiliser. Au départ pour un problème de compilation d’une extension PHP, aujourd’hui pour ne plus être dépendant d’Apple dans la mise à jour de ces logiciels.

J’utilise donc MacPort, un excellent gestionnaire de packages pour Mac OS X, qui permet de compiler et d’installer toutes sortes de logiciels open-source bien utiles.

La sortie récente de Mac OS X Lion, la nouvelle version du système d’exploitation d’Apple pour ordinateur, a été l’occasion de ré-installer complétement mon environnement LAMP…

Je vous propose ici un guide sur l’installation et la configuration d’Apache, MySQL et PHP avec MacPort…
Lire la suite

Restart…

Voilà un bout de temps que je n’ai plus écrit de nouveau article… Surtout par manque de temps, préférant consacrer mon temps libre à mon site internet sur Smallville, pour la dernière année de la série tv, et… un nouveau projet personnel sur lequel je travaille depuis plus d’un an et qui devrait voir le jour, je l’espère, dans très peu de temps.

Aujourd’hui, je remets donc en route mon blog et de nouveaux articles sont déjà en préparation. Cela sera l’occasion de parler de Symfony2, que je suis/utilise depuis plus d’un an maintenant, mais de Mac OS X, de développement web et plein d’autres choses.

Au passage, ce blog a été mis à jour à la dernière version de WordPress et s’offre un tout nouveau design. Le thème est basé sur celui par défaut de WordPress 3.2 nommé « Twenty Eleven » que j’ai un peu modifié pour mes besoins.

 

Utiliser l’extension Taggable de Doctrine avec Symfony 1.3/1.4

Jusqu’à symfony 1.2, si vous vouliez ajouter facilement de nouvelles fonctionnalités au framework PHP5 il fallait se diriger vers son importante base de plugins. Avec symfony 1.3 et 1.4, bien sûr vous pouvez toujours compter sur les plugins symfony mais viennent maintenant s’ajouter les extensions pour Doctrine

Si vous utilisez Doctrine comme Object Relational Mapper (ORM), vous connaissez certainement les behaviours Timestampable, Sluggable ou encore SoftDelete. Les extensions Doctrine vous permettent justement d’en ajouter de nouveaux très facilement, en quelques clics ou lignes de commande.

Aujourd’hui, je vous propose d’installer et d’utiliser l’extension Taggable. Cette dernière permet d’ajouter des tags sur les modèles de votre choix. L’intérêt peut être de faire des recommandations ou retrouver des éléments relatifs à un autre.

Lire la suite

Critique du livre « Symfony 1.3 Web Application Development »

symfony 1.3 bookIl y a quelques semaines, l’éditeur PacktPublishing m’a proposé d’écrire une critique de son livre fraichement sorti intitulé « Symfony 1.3 Web Application Development » et écrit par Tim Bowler et Wojciech Bancer. Comme son nom l’indique, le livre est consacré au framework PHP5 en vogue en ce moment, j’ai nommé symfony…

« Symfony 1.3 Web Application Development » compte un peu plus de 200 pages que je viens tout juste de terminer. Alors, convaincu ou déçu ? Voici mon avis…

Lire la suite

Traduire complètement l’admin generator de Symfony

Si vous avez déjà essayé de traduire l’admin generator de Symfony vous avez probablement été confronté au problème : certaines chaînes ne peuvent pas être traduites car elles n’utilisent pas le système d’internationalisation (i18n) du framework. Ces chaînes sont présentes directement dans les widgets dédiés aux formulaires de filtrage. C’est le cas de is empty, yes or no ou encore de from [...] to [...].

En faisant une recherche rapide sur Internet, vous trouverez quelques solutions mais elles nécessitent de modifier tous les formulaires du projet. Sur un petit projet, 2-3 formulaires, cela peut être acceptable mais avec une soixantaine de formulaires cela peut vite devenir embêtant.
Lire la suite

Symfony : Gérer un formulaire dans un composant

Dans un projet Symfony, comment gérer la validation d’un formulaire lorsqu’il est dans un composant ? C’est la question que l’on m’a posé cette semaine la semaine dernière (le temps passe vite…).

Tout d’abord, qu’est-ce qu’un composant dans Symfony ? Il s’agit en quelque sorte d’une action qui est réutilisable entre les différents modules de l’application. A la différence des « partials », qui sont « que » des templates, les composants contiennent de la logique : le plus souvent, récupérer un ou plusieurs modèles.

Pour revenir à la question, le problème n’est pas de gérer la validation à proprement parler, Symfony va s’en occuper grâce au forms framework mais plutôt de savoir où envoyer le visiteur une fois le formulaire soumis et comment, à la fin, le rediriger sur la page initiale, celle où il a rempli le formulaire.

Lire la suite

Symfony : Utiliser un fichier de config personnalisé

Lorsque l’on développe un projet, on a (presque?) toujours un certain nombre de paramètres propres à ce dernier. Cela peut-être le nom du site internet, la clé d’accès à un WebService ou encore la taille des miniatures à générer. De façon générale, il s’agit de tous ces paramètres communs à la fois au frontend et au backend du projet.

Tout bon développeur qui se respecte, je ne laisserai pas ce genre de paramètre perdu dans la logique métier. Tout d’abord parce que ça n’a absolument rien à faire là et ensuite parce qu’il ne serait pas facile de modifier le paramètre plus tard. Une bonne pratique est donc de créer un fichier à part pour stocker ces paramètres…

Lire la suite