3WDOC, Node, Javascript – Une expérience de développement mixant 3WDOC et Node.js pour un service à valeur ajoutée
Chez 3WDOC, après, nous être intéressés au SaaS, au Cloud et à l’HTML5, nous poursuivons notre investigation autour des possibilités innovantes et futures offertes par le navigateur, côté client, à l’aide de javascript. Javascript qui connait d’ailleurs une seconde jeunesse !
C’est aujourd’hui le fruit de cette recherche qui vous est présenté dans cet article un peu technique certes mais qui pointe le potentiel offert par les évolutions du développement coté serveur comme coté client via le navigateur notamment…. et tout cela n’est qu’un début ! On a donc basé le développement de cette fonctionnalité de téléchargement des créations faites avec notre SaaS 3WDOC autour de node.js.
Sans vouloir jouer les gourous, il semble certain que l’émergence de framework type node.js va encore rabattre les cartes du digital, flouter un peu plus la frontière entre le Cloud & son cortège de SaaS et le développement logiciel traditionnel (vous savez ces applications que vous installez en dur sur votre ordinateur, tablette, smartphone à pardon en France on dit ordiphone).
Bien tout simplement, on passe en effet indifféremment et de manière transparente désormais du coté serveur ou du coté client via le navigateur, comme on passe de l’ordinateur, à la télévision connectée puis au mobile, puis à une PSP.
Pour information, nous nous sommes aussi appuyés sur un développement très UX oriented
à savoir Bootstrap de Twitter.
Bootstrap
Sleek, intuitive, and powerful front-end framework for faster and easier web development.
Source : http://twitter.github.io/bootstrap/
Pour comprendre, le fonctionnement de Node.js, nous vous invitons à lire l’article suivant qui est une brève introduction au fonctionnement de Node :
- Node, JavaScript – Introduction rapide à la bibliothèque JavaScript Node.js
http://social.hecube.net/2013/03/node-javascript-introduction-rapide-a-la-bibliotheque-javascript-node-js/
Présentation du Downloader 3WDOC version 0.0.2
L’ensemble qui est présenté ci-dessous n’est donné qu’à titre informatif. En effet, l’utilisation du downloader est un service que seul l’équipe de 3WDOC opère pour le moment. Si vous souhaitez bénéficier de ce service veuillez vous rendre sur la page suivante un formulaire vous y attend : http://blog.3wdoc.com/fr/archiver-ses-creations-3wdoc/
Sur un mode agile, on va décrire succinctement le mode de fonctionnement de ce Downloader 3WDOC version 0.0.2 à la manière d’une user story
.
1. Une fois dans la répertoire du Downloader
cd /Users/nom-du-user/Documents/downloader3wdoc-0.0.2 |
2. Une installation ou une mise à jour rapide de Node et des dépendances nécessaires au Downloader
npm install node npm install express node npm install socket.io npm install htmlparser2 npm install jsdom |
3. A titre de vérification, on regarde la version de Node.js
node -v |
4. Il ne reste plus qu’à lancer le service via une commande node
node app.js |
5. Node émule donc un serveur web coté navigateur, le plus simplement du monde et c’est cela qui est pratique. Le service est disponible à l’adresse suivante
http://localhost:8888/
Il ne reste plus qu’à remplir les champs pour initier le téléchargement de la création sur 3WDOC à l’aide de l’adresse sur notre plate-forme http://story.3wdoc.com/cb5dbe80e72881080ebe8f813c6cfa9544f30e97ee45519522d09786cdf81af1f4/1/index.html
Les éléments essentiels sont http://story.3wdoc.com/user-id/webdoc-id/index.html
user-id => cb5dbe80e72881080ebe8f813c6cfa9544f30e97ee45519522d09786cdf81af1f4
, l’identifiant du compte sur notre plate-forme 3WDOCwebdoc-id => 1
, l’identifiant du webdoc ou de la création à télécharger.
Plus d’informations
- Le site offciel de nodejs
http://nodejs.org/ - Creating a REST API using Node.js, Express, and MongoDB
http://coenraets.org/blog/2012/10/creating-a-rest-api-using-node-js-express-and-mongodb/ - Why Walmart is using Node.js
http://venturebeat.com/2012/01/24/why-walmart-is-using-node-js/ - Diving into Node.js – Introduction & Installation
http://www.stoimen.com/blog/2010/11/16/diving-into-node-js-introduction-and-installation/ - Node.js for Beginners
http://net.tutsplus.com/tutorials/javascript-ajax/node-js-for-beginners/ - Setting up Node.js and npm on Mac OSX
http://shapeshed.com/setting-up-nodejs-and-npm-on-mac-osx/ - Homebrew, The missing package manager for OS X
http://mxcl.github.com/homebrew/ - How to Install Node.js
http://howtonode.org/how-to-install-nodejs - Tutorial: Get started with Node.js on Mac (Beginner)
http://dannemanne.com/posts/tutorial_get_started_with_node_js_on_mac_beginner_ - Our First Node.js App: Backbone on the Client and Server – Airbnb Engineering
http://nerds.airbnb.com/weve-launched-our-first-nodejs-app-to-product - How We Built an iOS App, an Android App and a Node.js API in 20 Hours | Blog – Semantics3
http://blog.semantics3.com/how-we-built-an-ios-app-an-android-app-and-a-node-js-api-in-20-hours/ - Jeff Mesnil — HTML5 Web Application for iPhone and iPad With node.js
http://jmesnil.net/weblog/2010/11/24/html5-web-application-for-iphone-and-ipad-with-node-js/ - Real-Time Geolocation Service with Node.js | Codrops
http://tympanus.net/codrops/2012/10/11/real-time-geolocation-service-with-node-js/ - Node Tuts – Episode I – Node.js Introduction de Pedro Teixeira
http://vimeo.com/52691590 - Real-Time Geolocation Service with Node.js | Codrops
http://tympanus.net/codrops/2012/10/11/real-time-geolocation-service-with-node-js/ - Node.js par Beardsley (« B ») Ruml de http://ruml.com
http://cdn.cs50.net/2011/fall/seminars/Node_js/Node_js.pdf - Harvard University’s introductory computer science course
https://www.cs50.net/ - NodeCloud – Node.js resources
nodecloud.org - The Node Beginner Book » A comprehensive Node.js tutorial
http://nodebeginner.org - Mastering Node
http://visionmedia.github.com/masteringnode/book.html - Node Tuts screencasts
http://nodetuts.com - How To Node
http://howtonode.org - How to log in node.js
http://docs.nodejitsu.com/articles/intermediate/how-to-log - Javascript, node.js and for loops
http://blog.mixu.net/2011/02/03/javascript-node-js-and-for-loops/ - De très nombreuses ressources sur Node.js
http://stackoverflow.com/questions/2353818/how-do-i-get-started-with-node-js