WAVO.MEUsing node.js in production
“Giving your multimedia a home on the web”              What is wavo.me?
FIXING THE DISCONNECTBetween your online content and your main methods of              storage and organization
ORGANIZING YOUR MEDIA   Not only aggregate, but also organize
WHY NODE.JSWhat factors made us choose node.js over competing                   technologies
OUR STACKNode.js, Mongo DB, Redis, Backbone.js, Socket.io
"rocket"     : ">= 0.1.0"  , “arachne-client”     :”>=0.0.1”     , "imagemagick"        : ">= 0.1.2"         , "knox"     ...
EXPRESS AND CONNECT    Why not simply use Express?
ROCKET.JSOur framework which builds on Express adding functionality for                      team projects
CONVENTION > CONFIGURATION Some simple conventions can save lots of time as the team                         grows
CONTROLLERS & VIEWSUniform connections between URL routing and templating
• Uniform workflow for the developer• Focuses the developer on the current problem• Always know where functionality belong ...
CLIENT DIRECTORY    The use of require.js
• A desire for uniform client / server code• Consistent templating formats• What about optimizations ?   CLIENT DIRECTORY
• Require.js is available• There exists many browser templating engines• Tedious optimizations with separate code bases   ...
• Runtime file watching• Compiled template files• Environment controlled by simple flag• Automatic resource optimizations   C...
EXPORTS & DNODEBlurring the line between client code and server code
• Consistent interface with controllers• RPC over socket.io• Server side exports always available   EXPORTS & DNODE
LOCALESProduction applications require simple and easy ways to be                 displayed in any language
SPLITTING CONCERNSMany modules and even completely separate projects
400                   VS                                  500MY fault                           YOUR fault    SIMPLE INTER...
ARACHNECommunicating over a persistent HTTP connection
Load Balancer
WAVO.METhanks for listening, be sure to check out:               rocketJS.net                    &                wavo.me
Upcoming SlideShare
Loading in …5
×

RocketJS Nodejs rapid development framework for production web apps

1,753 views
1,660 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,753
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • RocketJS Nodejs rapid development framework for production web apps

    1. 1. WAVO.MEUsing node.js in production
    2. 2. “Giving your multimedia a home on the web” What is wavo.me?
    3. 3. FIXING THE DISCONNECTBetween your online content and your main methods of storage and organization
    4. 4. ORGANIZING YOUR MEDIA Not only aggregate, but also organize
    5. 5. WHY NODE.JSWhat factors made us choose node.js over competing technologies
    6. 6. OUR STACKNode.js, Mongo DB, Redis, Backbone.js, Socket.io
    7. 7. "rocket" : ">= 0.1.0" , “arachne-client” :”>=0.0.1” , "imagemagick" : ">= 0.1.2" , "knox" : ">= 0.0.9" , "express-messages" : ">= 0.0.2" , "bcrypt" : ">= 0.2.3" , "cookies" : ">= 0.1.6" , "keygrip" : ">= 0.1.7" , "nodemailer" : ">= 0.1.18" , "embedly" : ">= 0.3.4" , "async" : ">= 0.1.9" , "underscore" : ">= 1.1.6" , "oauth" : ">= 0.9.2" , "oo" : ">= 0.0.3" , "mongoose" : ">= 1.8.3"MODULES USEDA peak into our package.json
    8. 8. EXPRESS AND CONNECT Why not simply use Express?
    9. 9. ROCKET.JSOur framework which builds on Express adding functionality for team projects
    10. 10. CONVENTION > CONFIGURATION Some simple conventions can save lots of time as the team grows
    11. 11. CONTROLLERS & VIEWSUniform connections between URL routing and templating
    12. 12. • Uniform workflow for the developer• Focuses the developer on the current problem• Always know where functionality belong CONTROLLERS & VIEWS
    13. 13. CLIENT DIRECTORY The use of require.js
    14. 14. • A desire for uniform client / server code• Consistent templating formats• What about optimizations ? CLIENT DIRECTORY
    15. 15. • Require.js is available• There exists many browser templating engines• Tedious optimizations with separate code bases CLIENT DIRECTORY
    16. 16. • Runtime file watching• Compiled template files• Environment controlled by simple flag• Automatic resource optimizations CLIENT DIRECTORY
    17. 17. EXPORTS & DNODEBlurring the line between client code and server code
    18. 18. • Consistent interface with controllers• RPC over socket.io• Server side exports always available EXPORTS & DNODE
    19. 19. LOCALESProduction applications require simple and easy ways to be displayed in any language
    20. 20. SPLITTING CONCERNSMany modules and even completely separate projects
    21. 21. 400 VS 500MY fault YOUR fault SIMPLE INTERFACES Be clear about what module caused the error
    22. 22. ARACHNECommunicating over a persistent HTTP connection
    23. 23. Load Balancer
    24. 24. WAVO.METhanks for listening, be sure to check out: rocketJS.net & wavo.me

    ×