{"id":8558,"date":"2013-05-24T10:34:20","date_gmt":"2013-05-24T08:34:20","guid":{"rendered":"http:\/\/flaven.fr\/?p=8558"},"modified":"2026-09-16T10:07:29","modified_gmt":"2026-09-16T08:07:29","slug":"3wdoc-node-javascript-une-experience-de-developpement-mixant-3wdoc-et-node-js-pour-un-service-a-valeur-ajoutee","status":"publish","type":"post","link":"https:\/\/flaven.fr\/2013\/05\/3wdoc-node-javascript-une-experience-de-developpement-mixant-3wdoc-et-node-js-pour-un-service-a-valeur-ajoutee\/","title":{"rendered":"3WDOC, Node, Javascript &#8211; Une exp\u00e9rience de d\u00e9veloppement mixant 3WDOC et Node.js pour un service \u00e0 valeur ajout\u00e9e"},"content":{"rendered":"<p>\t<!-- 3WDOC, Node, Javascript - Une exp\u00e9rience de d\u00e9veloppement mixant 3WDOC et Node.js pour un service \u00e0 valeur ajout\u00e9e --><\/p>\n<p>\t<!--  Node, HTML5, Serveur, SaaS, navigateur, javascript, application, Cloud, Chrome, Google, npm, node, install, socket.io, htmlparser2, jsdom, console, mac, service, ordiphone, web, mobile, tablette, serveur, smartphone, iPad, iPhone, Galaxy, Android, Google, Chrome, navigateur, safari, Internet Explorer   --><\/p>\n<p>\t<a title=\"3WDOC, Node, Javascript - Une exp\u00e9rience de d\u00e9veloppement mixant 3WDOC et Node.js\" class=\"bigpic\" href=\"#\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b.png\" width=\"600\" height=\"235\" alt=\"3WDOC, Node, Javascript - Une exp\u00e9rience de d\u00e9veloppement mixant 3WDOC et Node.js\" \/><\/a><em>Copyright &copy; 3WDOC &amp; Node.js<\/em><\/p>\n<p>\tChez 3WDOC, apr\u00e8s, nous \u00eatre int\u00e9ress\u00e9s au SaaS, au Cloud et \u00e0 l&#8217;HTML5, nous poursuivons notre investigation autour des possibilit\u00e9s innovantes et futures offertes par le navigateur, c\u00f4t\u00e9 client, \u00e0 l&#8217;aide de javascript. Javascript qui connait d&#8217;ailleurs une seconde jeunesse ! <\/p>\n<p>\tC&#8217;est aujourd&#8217;hui le fruit de cette recherche qui vous est pr\u00e9sent\u00e9 dans cet article un peu technique certes mais qui pointe le potentiel offert par les \u00e9volutions du d\u00e9veloppement cot\u00e9 serveur comme cot\u00e9 client via le navigateur notamment&#8230;. et tout cela n&#8217;est qu&#8217;un d\u00e9but ! On a donc bas\u00e9 le d\u00e9veloppement de cette fonctionnalit\u00e9 de t\u00e9l\u00e9chargement des cr\u00e9ations faites avec notre SaaS 3WDOC autour de node.js.<\/p>\n<p>\t<strong>Sans vouloir jouer les gourous, il semble certain que l&#8217;\u00e9mergence de framework type node.js va encore rabattre les cartes du digital, flouter un peu plus la fronti\u00e8re entre le Cloud &#038; son cort\u00e8ge de SaaS et le d\u00e9veloppement logiciel traditionnel (vous savez ces applications que vous installez en dur sur votre ordinateur, tablette, smartphone \u00e0 pardon en France on dit ordiphone). <\/strong><\/p>\n<p>\tBien tout simplement, on passe en effet indiff\u00e9remment et de mani\u00e8re transparente d\u00e9sormais du cot\u00e9 serveur ou du cot\u00e9 client via le navigateur, comme on passe de l&#8217;ordinateur, \u00e0 la t\u00e9l\u00e9vision connect\u00e9e puis au mobile, puis \u00e0 une PSP.<\/p>\n<p>Pour information, nous nous sommes aussi appuy\u00e9s sur un d\u00e9veloppement tr\u00e8s <code>UX oriented<\/code> \u00e0 savoir Bootstrap de Twitter.<\/p>\n<blockquote><p>Bootstrap<br \/>Sleek, intuitive, and powerful front-end framework for faster and easier web development.<\/p><\/blockquote>\n<p><em>Source : <a href=\"http:\/\/twitter.github.io\/bootstrap\/\" target=\"_blank\">http:\/\/twitter.github.io\/bootstrap\/<\/a><\/em><\/p>\n<p>\tPour comprendre, le fonctionnement de Node.js, nous vous invitons \u00e0 lire l&#8217;article suivant qui est une br\u00e8ve introduction  au fonctionnement de Node :<\/p>\n<ul>\n<li>Node, JavaScript \u2013 Introduction rapide \u00e0 la biblioth\u00e8que JavaScript Node.js<br \/><a href=\"http:\/\/social.hecube.net\/2013\/03\/node-javascript-introduction-rapide-a-la-bibliotheque-javascript-node-js\/\" target=\"_blank\">http:\/\/social.hecube.net\/2013\/03\/node-javascript-introduction-rapide-a-la-bibliotheque-javascript-node-js\/<\/a><\/li>\n<\/ul>\n<p><H4>Pr\u00e9sentation du Downloader 3WDOC version 0.0.2<\/H4><br \/>\n<b>L&#8217;ensemble qui est pr\u00e9sent\u00e9 ci-dessous n&#8217;est donn\u00e9 qu&#8217;\u00e0 titre informatif. En effet, l&#8217;utilisation du downloader est un service que seul l&#8217;\u00e9quipe de 3WDOC op\u00e8re pour le moment. Si vous souhaitez b\u00e9n\u00e9ficier de ce service veuillez vous rendre sur la page suivante un formulaire vous y attend : <a href=\"https:\/\/flaven.fr\/archiver-ses-creations-3wdoc\/\" target=\"_blank\">http:\/\/blog.3wdoc.com\/fr\/archiver-ses-creations-3wdoc\/<\/a><\/b><\/p>\n<p><b>Sur un mode agile, on va d\u00e9crire succinctement le mode de fonctionnement de ce Downloader 3WDOC version 0.0.2 \u00e0 la mani\u00e8re d&#8217;une <code>user story<\/code>.<\/b><\/p>\n<p><b>1. Une fois dans la r\u00e9pertoire du Downloader<\/b><\/p>\n<pre lang=\"bash\"> cd \/Users\/nom-du-user\/Documents\/downloader3wdoc-0.0.2<\/pre>\n<p><b>2. Une installation ou une mise \u00e0 jour rapide de Node et des d\u00e9pendances n\u00e9cessaires au Downloader<\/b><\/p>\n<pre lang=\"bash\">\r\n\tnpm install node\r\n\tnpm install express node\r\n\tnpm install socket.io \r\n\tnpm install htmlparser2\r\n\tnpm install jsdom\r\n<\/pre>\n<p><b>3. A titre de v\u00e9rification, on regarde la version de Node.js<\/b><\/p>\n<pre lang=\"bash\">\r\n\tnode -v\r\n<\/pre>\n<p><b>4. Il ne reste plus qu&#8217;\u00e0 lancer le service via une commande node<\/b><\/p>\n<pre lang=\"bash\">node app.js<\/pre>\n<p><b>5. Node \u00e9mule donc un serveur web cot\u00e9 navigateur, le plus simplement du monde et c&#8217;est cela qui est pratique. Le service est disponible \u00e0 l&#8217;adresse suivante<\/b><br \/>\n<code>http:\/\/localhost:8888\/<\/code><\/p>\n<p><b>Il ne reste plus qu&#8217;\u00e0 remplir les champs pour initier le t\u00e9l\u00e9chargement de la cr\u00e9ation sur 3WDOC \u00e0 l&#8217;aide de l&#8217;adresse sur notre plate-forme <code>http:\/\/story.3wdoc.com\/cb5dbe80e72881080ebe8f813c6cfa9544f30e97ee45519522d09786cdf81af1f4\/1\/index.html<br \/>\n<\/code><\/b><\/p>\n<p><b>Les \u00e9l\u00e9ments essentiels sont <code>http:\/\/story.3wdoc.com\/user-id\/webdoc-id\/index.html<\/code><\/b><\/p>\n<ol>\n<li><code>user-id => cb5dbe80e72881080ebe8f813c6cfa9544f30e97ee45519522d09786cdf81af1f4<\/code>, l&#8217;identifiant du compte sur notre plate-forme 3WDOC<\/li>\n<li><code>webdoc-id => 1<\/code>, l&#8217;identifiant du webdoc ou de la cr\u00e9ation \u00e0 t\u00e9l\u00e9charger.<\/li>\n<\/ol>\n<div id='gallery-1' class='gallery galleryid-8558 gallery-columns-1 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b_bf.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"225\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b_bf-300x225.jpg\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b_bf-300x225.jpg 300w, https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b_bf-94x70.jpg 94w, https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b_bf-420x315.jpg 420w, https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b_bf.jpg 640w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\n<h4>Plus d&#8217;informations<\/h4>\n<ul>\n<li>Le site offciel de nodejs<br \/><a href=\"http:\/\/nodejs.org\/\" target=\"_blank\">http:\/\/nodejs.org\/<\/a><\/li>\n<li>Creating a REST API using Node.js, Express, and MongoDB<br \/><a href=\"http:\/\/coenraets.org\/blog\/2012\/10\/creating-a-rest-api-using-node-js-express-and-mongodb\/\" target=\"_blank\">http:\/\/coenraets.org\/blog\/2012\/10\/creating-a-rest-api-using-node-js-express-and-mongodb\/<\/a><\/li>\n<li>Why Walmart is using Node.js<br \/><a href=\"http:\/\/venturebeat.com\/2012\/01\/24\/why-walmart-is-using-node-js\/\" target=\"_blank\">http:\/\/venturebeat.com\/2012\/01\/24\/why-walmart-is-using-node-js\/<\/a><\/li>\n<li>Diving into Node.js \u2013 Introduction &#038; Installation<br \/><a href=\"http:\/\/www.stoimen.com\/blog\/2010\/11\/16\/diving-into-node-js-introduction-and-installation\/\" target=\"_blank\">http:\/\/www.stoimen.com\/blog\/2010\/11\/16\/diving-into-node-js-introduction-and-installation\/<\/a><\/li>\n<li>Node.js for Beginners<br \/><a href=\"http:\/\/net.tutsplus.com\/tutorials\/javascript-ajax\/node-js-for-beginners\/\" target=\"_blank\">http:\/\/net.tutsplus.com\/tutorials\/javascript-ajax\/node-js-for-beginners\/<\/a><\/li>\n<li>Setting up Node.js and npm on Mac OSX<br \/><a href=\"http:\/\/shapeshed.com\/setting-up-nodejs-and-npm-on-mac-osx\/\" target=\"_blank\">http:\/\/shapeshed.com\/setting-up-nodejs-and-npm-on-mac-osx\/<\/a><\/li>\n<li>Homebrew, The missing package manager for OS X<br \/><a href=\"http:\/\/mxcl.github.com\/homebrew\/\" target=\"_blank\">http:\/\/mxcl.github.com\/homebrew\/<\/a><\/li>\n<li>How to Install Node.js<br \/><a href=\"http:\/\/howtonode.org\/how-to-install-nodejs\" target=\"_blank\">http:\/\/howtonode.org\/how-to-install-nodejs<\/a><\/li>\n<li>Tutorial: Get started with Node.js on Mac (Beginner)<br \/><a href=\"http:\/\/dannemanne.com\/posts\/tutorial_get_started_with_node_js_on_mac_beginner_\" target=\"_blank\">http:\/\/dannemanne.com\/posts\/tutorial_get_started_with_node_js_on_mac_beginner_<\/a><\/li>\n<li>Our First Node.js App: Backbone on the Client and Server &#8211; Airbnb Engineering<br \/><a href=\"http:\/\/nerds.airbnb.com\/weve-launched-our-first-nodejs-app-to-product\" target=\"_blank\">http:\/\/nerds.airbnb.com\/weve-launched-our-first-nodejs-app-to-product<\/a><\/li>\n<li>How We Built an iOS App, an Android App and a Node.js API in 20 Hours | Blog &#8211; Semantics3<br \/><a href=\"http:\/\/blog.semantics3.com\/how-we-built-an-ios-app-an-android-app-and-a-node-js-api-in-20-hours\/\" target=\"_blank\">http:\/\/blog.semantics3.com\/how-we-built-an-ios-app-an-android-app-and-a-node-js-api-in-20-hours\/<\/a><\/li>\n<li>Jeff Mesnil &mdash; HTML5 Web Application for iPhone and iPad With node.js<br \/><a href=\"http:\/\/jmesnil.net\/weblog\/2010\/11\/24\/html5-web-application-for-iphone-and-ipad-with-node-js\/\" target=\"_blank\">http:\/\/jmesnil.net\/weblog\/2010\/11\/24\/html5-web-application-for-iphone-and-ipad-with-node-js\/<\/a><\/li>\n<li>Real-Time Geolocation Service with Node.js | Codrops<br \/><a href=\"http:\/\/tympanus.net\/codrops\/2012\/10\/11\/real-time-geolocation-service-with-node-js\/\" target=\"_blank\">http:\/\/tympanus.net\/codrops\/2012\/10\/11\/real-time-geolocation-service-with-node-js\/<\/a><\/li>\n<li>Node Tuts &#8211; Episode I &#8211; Node.js Introduction de Pedro Teixeira<br \/><a href=\"http:\/\/vimeo.com\/52691590\" target=\"_blank\">http:\/\/vimeo.com\/52691590<\/a><\/li>\n<li>Real-Time Geolocation Service with Node.js | Codrops<br \/><a href=\"http:\/\/tympanus.net\/codrops\/2012\/10\/11\/real-time-geolocation-service-with-node-js\/\" target=\"_blank\">http:\/\/tympanus.net\/codrops\/2012\/10\/11\/real-time-geolocation-service-with-node-js\/<\/a><\/li>\n<li>Node.js par Beardsley (&laquo;&nbsp;B&nbsp;&raquo;) Ruml de <a href=\"http:\/\/ruml.com\" target=\"_blank\">http:\/\/ruml.com<\/a><br \/><a href=\"http:\/\/cdn.cs50.net\/2011\/fall\/seminars\/Node_js\/Node_js.pdf\" target=\"_blank\">http:\/\/cdn.cs50.net\/2011\/fall\/seminars\/Node_js\/Node_js.pdf<\/a><\/li>\n<li>Harvard University\u2019s introductory computer science course<br \/><a href=\"https:\/\/www.cs50.net\/\" target=\"_blank\">https:\/\/www.cs50.net\/<\/a><\/li>\n<h4>Les liens de Beardsley (&laquo;&nbsp;B&nbsp;&raquo;) Ruml de <a href=\"http:\/\/ruml.com\" target=\"_blank\">http:\/\/ruml.com<\/a><\/h4>\n<li>NodeCloud &#8211; Node.js resources<br \/><a href=\"nodecloud.org\" target=\"_blank\">nodecloud.org<\/a><\/li>\n<li>The Node Beginner Book \u00bb A comprehensive Node.js tutorial<br \/><a href=\"http:\/\/nodebeginner.org\" target=\"_blank\">http:\/\/nodebeginner.org<\/a><\/li>\n<li>Mastering Node<br \/><a href=\"http:\/\/visionmedia.github.com\/masteringnode\/book.html\" target=\"_blank\">http:\/\/visionmedia.github.com\/masteringnode\/book.html<\/a><\/li>\n<li>Node Tuts screencasts<br \/><a href=\"http:\/\/nodetuts.com\" target=\"_blank\">http:\/\/nodetuts.com<\/a><\/li>\n<li>How To Node<br \/><a href=\"http:\/\/howtonode.org\" target=\"_blank\">http:\/\/howtonode.org<\/a><\/li>\n<li>How to log in node.js<br \/><a href=\"http:\/\/docs.nodejitsu.com\/articles\/intermediate\/how-to-log\" target=\"_blank\">http:\/\/docs.nodejitsu.com\/articles\/intermediate\/how-to-log<\/a><\/li>\n<li>Javascript, node.js and for loops<br \/><a href=\"http:\/\/blog.mixu.net\/2011\/02\/03\/javascript-node-js-and-for-loops\/\" target=\"_blank\">http:\/\/blog.mixu.net\/2011\/02\/03\/javascript-node-js-and-for-loops\/<\/a><\/li>\n<li>De tr\u00e8s nombreuses ressources sur Node.js <br \/><a href=\"http:\/\/stackoverflow.com\/questions\/2353818\/how-do-i-get-started-with-node-js\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/2353818\/how-do-i-get-started-with-node-js<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Copyright &copy; 3WDOC &amp; Node.js Chez 3WDOC, apr\u00e8s, nous \u00eatre int\u00e9ress\u00e9s au SaaS, au Cloud et \u00e0 l&#8217;HTML5, nous poursuivons notre investigation autour des possibilit\u00e9s&hellip; <\/p>\n<p class=\"text-center\"><a href=\"https:\/\/flaven.fr\/2013\/05\/3wdoc-node-javascript-une-experience-de-developpement-mixant-3wdoc-et-node-js-pour-un-service-a-valeur-ajoutee\/\" class=\"more-link\">Continue reading &rarr; <span class=\"screen-reader-text\">3WDOC, Node, Javascript &#8211; Une exp\u00e9rience de d\u00e9veloppement mixant 3WDOC et Node.js pour un service \u00e0 valeur ajout\u00e9e<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":9613,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"bf_ai_meta_description":"3WDOC et Node.js unissent leurs forces pour un service innovant. Utilisez JavaScript pour des t\u00e9l\u00e9chargements optimis\u00e9s via le navigateur.","bf_ai_og_title":"3WDOC, Node, Javascript \u2013 Service innovant","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[3436,3447,3451,3435],"tags":[2238,163,372,2200,524,615,2214,2185,1865,1866,1867,426,249,226,1868,2210,31,3514,617,571,1869,1870,2242,618,574,239,1871,1872,34,2182],"class_list":["post-8558","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-digital-storytelling-webdocs","category-technology-trends","category-web-design-front-end","category-web-development","tag-android","tag-application","tag-chrome","tag-cloud","tag-console","tag-galaxy","tag-google","tag-html5","tag-htmlparser2","tag-install","tag-internet-explorer","tag-ipad","tag-iphone","tag-javascript","tag-jsdom","tag-mac","tag-mobile","tag-mongodb","tag-navigateur","tag-node","tag-npm","tag-ordiphone","tag-saas","tag-safari","tag-serveur","tag-service","tag-smartphone","tag-socket-io","tag-tablette","tag-web"],"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p3Vuhl-2e2","jetpack_featured_media_url":"https:\/\/flaven.fr\/wp-content\/uploads\/2013\/05\/using_downloader_for_3wdoc_b_bf.jpg","_links":{"self":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/8558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/comments?post=8558"}],"version-history":[{"count":1,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/8558\/revisions"}],"predecessor-version":[{"id":9614,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/8558\/revisions\/9614"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/media\/9613"}],"wp:attachment":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/media?parent=8558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/categories?post=8558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/tags?post=8558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}