All posts in Open Source

Bien démarrer ses projets web avec Yeoman

yeoman

Introduction

Avec autant d’outils disponibles pour les développeurs web aujourd’hui, il peut parfois être difficile de comprendre comment tout cela s’assemble et fonctionne.

Construire la structure de son projet « from scratch » et organiser son code et ses dépendances n’est pas toujours évident. Yeoman va nous aider à résoudre ce problème, et vous lancer sur de bons rails en générant la structure de base de votre projet (scripts, librairies, tests, …). Le code généré par yeoman est le fruit de l’aggrégation des meilleurs pratiques du web qui ont évoluées au sein de l’industrie.

Dans cet article, vous allez apprendre comment exploiter Yeoman afin de pouvoir de créer des applications web solides.

Qu’est-ce que Yeoman ?

Yeoman est une collection de trois outils : Yo, Grunt, et Bower. Combinés ensemble, ces outils fournissent tout ce qu’un développeur a besoin pour démarrer son projet.

Yo – CLI tool for scaffolding out Yeoman projects

Yo est un outil qui est utilisé pour échafauder une nouvelle application. Il permet de créer la structure du projet, l’organisation des feuilles de style, des scripts, des ressources.

Grunt – The javascript task runner

Grunt est un outil basé sur nodejs qui vous permet d’exécuter des tâches écrites en javascript. Par exemple, avec grunt vous pouvez automatiser les builds, les tests, et le développement. Grunt s’appuie sur un grand nombre de plugins parmi lesquels on peut trouver.

Bower – A package manager for the web

Bower est un outil qui va vous permettre de gérer vos dépendances et librairies, les installer automatiquement et surtout les garder à jour, de sorte que vous n’avez pas à les télécharger manuellement.

Installation

Prérequis

Un guide complet est accessible directement ici, pour ceux qui voudrait rapidement l’essayer assurez vous d’avoir installé Nodejs , Git et optionnellement Ruby et Compass (si vous voulez utiliser scss)

Ensuite, en ligne de commande, installer yo

npm install -g yo

Comme yo dépend de grunt et bower, ces derniers seront installés automatiquement !

Maintenant, il faut installer un générateur de projet :

npm install -g generator-webapp

Certains générateurs embarquent yo, grunt et bower, et les installeront si nécessaire automatiquement. La liste des générateurs se trouve sur npm

Utilisation

Une génération de projet avec yeoman se déroule ainsi :

mkdir MyWebApp	&& cd $_       # Crée un dossier nommé MyWebApp et se place dedans
yo webapp                      # Génère une structure de base
bower install underscore       # Installe les dépendances et librairies
grunt                          # Pour builder le projet	
grunt test                     # Lance les tests
grunt serve                    # Lance un serveur

Générateurs

Plusieurs générateurs sont disponibles via npm. Parmi les frameworks les plus utilisés, on trouve facilement les générateurs associés :

Backbone

npm install generator-backbone

yo backbone 			# Génère la structure
yo backbone:model article	# Génère un modèle
yo backbone:collection article  # Génère une collection
yo backbone:router article      # Génère une route
yo backbone:view article	# Génère une vue
grunt serve 			# Lance votre projet dans un serveur local

AngularJS

npm install generator-angular
yo angular 					# Génère la structure
bower install 					# Installe les dépendances
grunt serve 					# Lance votre projet dans un serveur local

Emberjs

npm install generator-ember 	
yo ember 					# Génère la structure
bower install 					# Installe les dépendances
grunt serve 					# Lance votre projet dans un serveur local

Et si cela ne vous suffit pas, vous pouvez aussi écrire votre propre générateur et ainsi optimiser d’avantage votre productivité, ou contribuer à la communauté en soumettant votre générateur sur npm. Pour les plus courageux suivre le guide ici

Plugins grunt

Une multitude de plugins va vous permettre d’augmenter votre productivité et automatiser vos tâches : validation du code, minification et obfuscation du code source, zip des sources, live reload, lancer des commandes shell, déployer sur un serveur … Voir ici pour tous les plugins disponibles.

Pour installer un plugin grunt, éditer le fichier package.json à la racine du projet pour ajouter le plugin. Exemple :

{
	"name": "MaWebApp",
	"version": "1.0.2",
	"dependencies": {},
	"devDependencies": {
		"grunt": "~0.4.1",
		"grunt-contrib-copy": "~0.4.0",
		"grunt-contrib-clean": "~0.5.0",
		"grunt-contrib-compress": "~0.7.0",
		"time-grunt": "~0.2.1"  ## Ajoutez vos dépendances après cette ligne
	},
	"engines": {
		"node": ">=0.8.0"
	}
}

Ensuite, dans votre terminal :

npm install

Cela va installer automatiquement les nouvelles dépendances que vous avez ajoutées.

Conclusion

Ceci n’était qu’un aperçu des possibilités qu’offre Yeoman. En utilisant les générateurs de base et en inspectant le code généré, vous comprendrez mieux comment tout ces composants fonctionnent ensemble, et vous ouvrira surtout de nouvelles perspectives dans vos workflows.

Salon Solutions Linux, Paris les 28 et 29 mai 2013 : découvrez notre solution innovante DocDokuPLM

Linux_03

Nous serons présents au salon Solution Linux & Open Source les 28 et 29 mai 2013 au CNIT – Paris La Défense.

Venez donc nombreux sur notre stand (D12) découvrir notre solution innovante DocDokuPLM qui vous permet, entre autres, depuis un simple navigateur (sans auncun plugin ou installation) et depuis n’importe quelle plateforme (PC, Mac, Tablette, Smartphone) de :

– Visualiser vos modèles 3D.

– Collaborer par chat et visio-conférence.

Cliquez ici pour obtenir votre badge d’accès gratuit.

Retour sur le salon SIANE 2012 avec DocDokuPLM

Exposant pour la première année sur le salon SIANE (Salon des Partenaires de l’Industrie du Grand-Sud) qui avait lieu du 23 au 25 octobre 2012 au Parc des Expositions de Toulouse, je vous propose ici notre REX sur ce salon.

Stand SIANE-DocDokuPLM

Notre première participation était pour nous l’occasion de continuer de promouvoir au sein du tissu industriel régional, national et international notre solution innovante DocDokuPLM et donc également de capter sur le terrain les besoins des industriels en matière de PLM.

Nous avons ainsi rencontré un grand nombre d’industriels et de partenaires sur ce salon, ce qui nous a réellement permis de confronter les besoins concrets des entreprises avec notre solution innovante de PLM. Il est en effet toujours indispensable de garder à l’esprit que la technologie n’a de réelle valeur que si elle est au service des usages.

En résumé donc, je retiendrais que les industriels sont très captifs au fort ROI que propose notre solution Open Source.

En effet, nous avons noté que trois éléments technico-économiques ont retenu l’attention de tous nos visiteurs lors de ce salon :

– la possibilité de visualiseur tous types de modèles  3D  (Catia, Inventor, AutoCAD, NX…) sur tous types de terminaux (PC/Mac/Tablettes/Smartphones) directement dans le navigateur internet sans aucune installation ou plugin,
– notre modèle de coût non proportionnel au nombre de postes déployés puisque aucun déploiement nécessaire (donc pas de coût de licence, modèle Open Source), ceci permettant de ne pas limiter les usagers et les usages pour encore plus de ROI,
– la facilité d’intégration de notre solution moderne et résolument orientée web et cloud-ready avec l’existant (CAO, autre PLM, ERP, applications métiers…).

Mais nous avons surtout constaté que les avantages technico-écoonomiques de notre solution procurent une réelle valeur ajoutée métier au sein des industries puisque capables de susciter des nouveaux usages :

– pour le partage des données autour des modèles 3D dans un contexte d’entreprise encore plus étendue (entre clients, fournisseurs et partenaires) grâce au cloud,
– pour une meilleure information produit en situation de mobilité lors des phases d’assemblage et de maintenance,
– pour les managers souhaitant visualiser simplement l’avancement du produit, le montrer et communiquer atour de ce dernier,
– pour le marketing et les commerciaux pouvant enfin disposer simplement depuis n’importe où de la dernière version produit en clientèle !

Enfin, nous avons également relevé une fonctionnalité qui nous a été demandée à plusieurs reprises et qui sera donc prochainement incluse dans notre roadmap  : la possibilité d’effectuer des relevés ou mesures 3D des produits directement sur le modèle 3D, très utile pour les opérationnels mais également pour les utilisateurs devant réaliser des devis et tarifer selon les dimensions des solides.

Bilan extrêmement positif et enrichissant donc pour ce salon SIANE 2012 avec quelques contacts très intéressants à approfondir !

Pour information, le prochain salon où nous serons présent avec DocDokuPLM est un salon international plus orienté grands comptes de l’aéronautique et du spatial,du 4 au 6 décembre 2012 à Toulouse : Aeromart 2012.

DocDoku et Webinage font carton plein à la Mêlée Numérique XV !

Cette année encore, DocDoku était présent à la Mêlée Numérique et accompagné d’un partenaire de grande qualité avec Webinage.

Sur le stand de DocDoku, vous avez pu assisté à la présentation de l’application tactile que nous avons réalisée pour et avec Webinage.

Vous avez été également très nombreux à vouloir une démonstration de notre solution de GED Open Source disponible en SaaS.

Ces deux journées ont donc été plus que satisfaisantes pour l’équipe DocDoku car un public de qualité était au rendez-vous.

La conférence sur « HTML 5 ou l’évolution majeure du web et de l’internet mobile » présentée par Florent Garin notre Directeur Technique et Thomas van de Velde, Directeur Général de Webinage a rencontré un grand succès, avec la participation d’une centaine de personnes dans la salle !

Si vous n’avez pas pu assisté à la conférence, la présentation sera prochainement disponible sur notre blog et sur le site internet de la Mêlée Numérique.

DocDoku vous offre une tablette tactile pour tout contrat signé à la Mêlée Numérique XV

DocDoku aura le plaisir de vous accueillir sur son stand lors de la 15ème édition de la Mêlée Numérique à l’Espace Diagora de Toulouse Labège, les mercredi 20 et jeudi 21 avril 2011. Le Salon des TIC numéro 1 sur le Sud Ouest rassemble tous les acteurs économiques des solutions de l’informatique, des nouvelles technologies, des télécoms et de l’innovation. Au programme : 150 exposants, 45 ateliers et conférences et plus de 3000 visiteurs attendus.

L’actualité de DocDoku
Cet évènement sera l’occasion pour DocDoku de vous présenter sa dernière réalisation tactile entièrement développée au moyen de technologies innovantes Open Source (HTML 5, CSS3, JQuery, SIPCommunicator…). Venez également échanger avec nous sur notre solution de gestion du cycle de vie des produits (Product Lifecycle Management) Open Source, qui est incubée au sein d’OW2 et devrait être lancée au début de l’année prochaine.

Animation sur le stand
Assistez à une démonstration de l’application multiplateforme Webinage, notre dernière réalisation tactile entièrement développée au moyen de technologies innovantes Open Source.

Animation atelier
Notre directeur technique, Florent Garin, animera également un atelier sur « HTML 5 ou l’évolution majeure du web et de l’internet mobile » le mercredi 20 avril de 16h30 à 17h30 . Inscrivez-vous sur le site du salon.

A Propos de DocDoku
DocDoku est un cabinet de conseil et de formation innovant disposant d’une expertise sur les technologies et solutions Open Source (Java, JEE, Android, DocDoku, Liferay…). Cette expertise nous permet d’avoir la confiance de clients majeurs comme Amadeus, Axa, Cegedim, Dassault, LG, Motorola, Météo France, Mia Electric, MSA, NEC ou Pierre & Vacances.
Nativement éditeur de la solution libre éponyme de gestion collaborative de documents (GED ou ECM), notre activité résolument tournée vers la recherche et développement nous permet d’apporter une réelle valeur ajoutée à nos prestations de conseil, d’expertise, de formation et de réalisation de projets dans le domaine IT.
Nos consultants sont très impliqués dans nos projets de recherche et développement essentiellement Open Source et assurent une veille technologique permanente.

Plus d’information sur le salon
Mercredi 20 et jeudi 21 avril 2011 à l’Espace Diagora de Toulouse Labège. Entrée gratuite Le site du salon : http://www.meleenumerique.com

Contact Presse
M. Eric Descargues Téléphone : 05 61 72 24 09

Mentions Légales
DocDoku SARL au capital de 20 000 euros RCS Toulouse : 492 273 800 000 28 Code APE : 5829C Buroplis – Bâtiment B – 150 rue Nicolas Louis Vauquelin 31100 Toulouse
http://www.docdoku.com

DocDoku au 1er Mobile Monday Toulouse sur la NFC : actualités et perspectives des OS mobiles

Nous interviendrons pour la 1ère édition du Mobile Monday Toulouse du 4 avril 2011 consacrée à la NFC.
Il s’agira de faire le point sur les possibilités des OS mobiles aujourd’hui et demain.
Mobile Monday dédié à la NFC

Tout le programme est disponible ici : http://lacantine-toulouse.org/626/mobile-monday-toulouse-1ere-edition-sur-la-nfc
Cela se passe à la Cantine à partir de 18h30. Venez nombreux !

Interview d’Eric Descargues au salon de la Mêlée Numérique 14

Découvrez l’interview d’Eric Descargues donnée lors de 14ème Mêlée Numérique :

Merci à Claude Paichard pour l’interview et à l’équipe de Pinkanova pour la réalisation.

DocDoku participe à la 14ème édition de la Mêlée Numérique à Toulouse Labège les 28 et 29 avril 2010

DocDoku aura le plaisir de vous accueillir sur son stand lors de la 14ème édition de la Mêlée Numérique à l’Espace Diagora de Toulouse Labège, les mercredi 28 et jeudi 29 avril 2010.

Le Salon des TIC numéro 1 sur le Sud Ouest rassemble tous les acteurs économiques des solutions de l’informatique, des nouvelles technologies, des télécoms et de l’innovation. Au programme : 160 exposants, 40 ateliers et conférences et plus de 5000 visiteurs attendus.

DocDoku : Conseil, Formation et Solutions innovantes IT

L’actualité de DocDoku

Cet évènement sera l’occasion pour DocDoku de vous présenter ses toutes dernières solutions collaboratives (GED en mode SaaS avec client web Ajax) et mobiles (applications Android et multiplateformes). Venez également découvrir notre savoir-faire dans le domaine du conseil et de la formation en Systèmes d’Information et Technologies de l’Information et de la Communication.

Animation sur le stand

Venez assister à une démonstration de l’application Tableonline pour Google Phone Android, outil pratique et ludique de recherche et de réservation de restaurant depuis votre mobile. Découvrez également la nouvelle version de notre interface web (Ajax-GWT) de notre solution de GED éponyme à l’origine de notre société.

Participation atelier

Notre directeur technique, Florent Garin, animera également un atelier sur les « Stratégies et développements mobiles multiplateformes» le jeudi 29 avril de 9h30 à 10h30 (à suivre sur le programme du salon).

A Propos de DocDoku

DocDoku est un cabinet de conseil et de formation composé d’experts dans le domaine des Technologies de l’Information et de la Communication. Notre savoir-faire se traduit également par l’édition et l’intégration de solutions professionnelles mobiles et collaboratives.

Nativement éditeur de la solution libre éponyme de gestion collaborative de documents (GED ou ECM), notre activité résolument tournée vers la recherche et développement nous permet d’apporter une réelle valeur ajoutée à nos prestations de conseil, d’expertise, de formation et de réalisation de projets dans le domaine IT.

Nos consultants sont très impliqués dans nos projets de recherche et développement essentiellement Open Source et assurent une veille technologique permanente.

Enfin, nous nous efforçons de créer et de proposer des prestations et solutions  adaptées sans jamais oublier que l’expertise n’a de sens que si elle est au service de la couverture de vos  besoins métiers.

Plus d’information sur le salon

Mercredi 28 et jeudi 29 avril 2010 à l’Espace Diagora de Toulouse Labège.

Entrée gratuite

Le site du salon : http://salon.meleenumerique.com/

Contact Presse

M. Eric Descargues

Email : eric.descargues@docdoku.com

Téléphone : 05 61 72 24 09

Mobile : 06 70 00 12 91

Mentions Légales

DocDoku SARL au capital de 20 000 euros

RCS Toulouse : 492 273 800 000 28

Code APE : 5829C

Buroplis – Bâtiment B – 150 rue Nicolas Louis Vauquelin

31100 Toulouse

http://www.docdoku.com

Portail Liferay avec GWT intégré en SOA pour Pierre et Vacances

Aujourd’hui je viens vous faire partager une très belle expérience projet. Je vous parlerai donc d’un projet que nous avons réalisé pour notre client Pierre et Vacances, qui a su nous faire confiance jusqu’au bout pour le développement et l’infogérance de son extranet commercial.

Faire des choix en matière d’architecture logiciel en 2010 peut être un exercice difficile, c’est pourquoi l’approche de DocDoku en matière de choix techniques est basée sur les principes suivants :

  • pragmatisme, dans le choix des langages et des technologies,
  • ouverture d’esprit, nous effectuons une veille technologique permanente,
  • mise en contexte, chaque problème étant différent, les réponses à apporter doivent l’être également,
  • industrialisation, il ne s’agit pas de s’emparer de la toute dernière nouveauté mais de bâtir des solutions robustes, matures et maintenables,
  • respect des standards établis, pour garantir la pérennité des applications, et maximiser l’investissement consenti par nos clients, nous nous appuyons sur les standards unanimement reconnus.

Dans le cadre de l’extranet commercial développé pour Pierre et Vacances, les grands principes architecturaux retenus ont été les suivants :

  • utilisation du composant portail open source Liferay permettant un gain de productivité certain en particulier sur les modules génériques (droits d’accès, profils utilisateurs, agenda, publication de news…) mais respectant également la JSR 286, norme de communication entre le portail et les applications qui y sont hébergées, supportée par de nombreux éditeurs (IBM, Sun, Oracle, RedHat). Ceci permet de surcroît de limiter notre dépendance vis-à-vis d’une solution portail en particulier.
  • développement d’une architecture en couches permettant notamment de découpler les composants les uns des autres et de les faire évoluer indépendamment.  Une séparation en couches permet d’adapter en effet l’architecture physique en fonction des besoins de distribution pour une bonne capacité à monter en charge.  Une architecture n-Tiers en 4 couches distinctes a été choisie :
    • La couche d’accès aux données avec JPA-Hibernate dont le rôle est la connexion à la base de données, l’exécution des requêtes ou l’appel des procédures stockées.
    • La couche de service EJB3 et JAX-WS-Metro, ensemble des règles métiers et processus de l’application. Cette couche sera implémentée en Java via des composants transactionnels.
    • La couche métier POJO qui constitue le diagramme de classes des entités (le modèle objet).
    • La couche de présentation avec GWT et Portlet Liferay : l’interface utilisateur affiche les résultats traités par la couche métier.  Ici le framework Ajax GWT a été choisi pour à la fois offrir une ergonomie poussée et une forte maintenabilité.
  • mise en place d’une architecture de type SOA pour pouvoir exposer de façon universelle les fonctions de l’extranet pour les futures applications du SI.

Tout ceci est en production évidemment depuis la fin octobre 2009.

Agilement.