Le problème des piles pour applications web
Si vous avez déjà cherché à développer une appli web moderne, vous avez déjà dû vous heurter à la question de choisir les bons composants parmi la foultitude de ceux existants… et surtout les faire fonctionner.
Premièrement, quand je parle d'applis web modernes, il faut savoir qu'elles partagent en général cette architecture :
- un serveur HTTP,
- un cadriciel pour exposer des API REST,
- un cadriciel JavaScript pour la partie frontend: il consomme les API REST et met en forme les données en HTML,
- un système de construction (build), ou plutôt des, la partie serveur et la partie frontend utilisant en général un système différent.
Bref, il fait fonctionner tout cela ensemble, vérifier les incompatibilités, etc.
Les générateurs d'applications yeoman
Le projet yeoman vise à fournir des générateurs d'applications qui intègrent des piles complètes et prêtes à l'emploi dans le domaine des applis web. Même si le projet est issu de la communauté node.js
, on peut aisément écrire des générateurs pour n'importe quelle techno.
saloon
, faites entrer le cowboy
Le générateur saloon (licence Apache v2) est un générateur yeoman
pour débuter simplement une application web avec erlang et angular.
Il intègre les composants suivants:
- partie serveur:
- le serveur web cowboy,
- cowboy-swagger, pour générer des API compatibles swagger
- partie
frontend
:- bootstrap pour des composants graphiques pas trop moches,
- angular.js, le cadriciel bien connu pour faire des applis web dynamiques,
- Sass pour faciliter l'écriture de CSS,
- intégration / construction: un projet généré avec
saloon
est construit avecmake
et intègre:
Comment se lancer ?
Il vous suffit de lancer yo saloon
dans un répertoire vide, puis de lancer make
. Vous avez alors une appli prête à l'emploi que vous pouvez modifier / étendre comme bon vous semble. Mais toutes les bases sont là et fonctionnelles.
Aller plus loin
- generator-saloon (263 clics)
- yeoman (159 clics)
- cowboy (169 clics)
- swagger (129 clics)
# Et après ?
Posté par KiKouN . Évalué à 7.
Non, vu comme cela, c'est tentant. C'est une belle mise en bouche. Mais après, je fais quoi ? Je modifie quoi ?
Je n'ai pas, rapidement, trouvez une doc pour faire un simple helloworld. Je reste un peu sur ma fain.
[^] # Re: Et après ?
Posté par Jean Parpaillon (site web personnel) . Évalué à 1.
Pour le moment, je conseillerais de vous reporter à la documentation respective de:
… pour étendre la partie backend.
Et angular / bootstrap pour la partie frontend.
Bien sûr, il serait mieux d'inclure une documentation qui explique précisément où étendre le code.
Dans tous les cas, le but du générateur est plus d'avoir les bons outils en place que d'écrire l'application à votre place.
"Liberté, Sécurité et Responsabilité sont les trois pointes d'un impossible triangle" Isabelle Autissier
# Un peu HS, phoenix / elixir
Posté par jerome (site web personnel) . Évalué à 1.
Un peu HS puisque le framework phoenix est écrit en elixir qui tourne sur la VM erlang.
Phoenix utilise ecto, cowboy et tout un tas d'autres projets erlang éprouvés, dans un bel écrin d'outils et de convention issues de ruby on rails (parenté oblige). L'outil
mix
permet donc de générer un modèle d'application bien structuré, avec models, vues, streams, tests, migrations, config, asset pipeline (brunch) …C'est très agréable ce mélange de nouveauté et de maturité.
[^] # Re: Un peu HS, phoenix / elixir
Posté par mutantantihero . Évalué à 2.
Je confirme, je suis en train de porter une appli vers phoenix et c'est un écosytème extrèmement agréable.
Toute la partie OTP venant d'Erlang permet des architectures que je n'aurait jamais osé implémenter avec d'autres stacks. Erlang/Elixir c'est du robuste.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.