SlideShare a Scribd company logo
Date: 02/03/2015
Frameworks or a Design Pattern ?
Shubhra Kar, Head of Products and Education
@shubhrakar
Bert
Belder
Ben
Noordhuis
Node Core
Raymond
Feng
Ritchie
Martori
LoopBack / Express Core
Sam
Roberts
Miroslav
Bajtos
Ryan
Graham Plus 15 other full-time open source
developers working on Node.js core,
modules and tools.
Contributing to over 100 open source
modules.
Supporting banks, retail, IoT companies,
startups and internet companies on
Node.js
Patterns are not created, they evolve
Right Now
— Someone on Stage
Pattern 1: DIY / Construction Blocks
✤ Un-opinionated
✤ Middleware
Router using express 4.0
Router using restify
Strengths andWeaknesses
Pros
Great starting point
Low learning curve
Nearly a standard for Node.js web
middleware
Fully customizable
Targeted at browser, hence templating
and rendering OOB
Cons
All endpoints need to be created
manually
Developers may end up creating their
own non-optimized libraries
Every end point needs to be tested
Refactoring is painful, update
everything everywhere
No standards or prescription, DIY
Pros
Very stable and actively developed.
Automatic DTrace support for all
handlers on enabled platforms
Built in throttling
SPDY support
Borrows from express but without
unnecessary templating/rendering
Strict API with full control over HTTP
interactions
Visibility into latency and app
characteristics
Cons
All endpoints need to be created
manually
Developers may end up creating their
own non-optimized libraries
Every end point needs to be tested
Refactoring is painful, update
everything everywhere
No standards or prescription, DIY
Less documentation
Express Restify
Pattern 2: Configuration
✤ HAPI
✤ Express and Restify (maybe…)
Router using hapi
Router using hapi
Strengths andWeaknesses
Pros
Supported by Walmart labs. Less known
but getting momentum
Very granular control over request
handling
Detailed API reference with support for
document generation
Significantly more functionality for
building web servers
Pseudo prescriptive with configuration
centric approach
Caching, Authentication and input
validation available
Plugin based architecture for scaling
Cons
Good construction blocks but left to your
own devices to figure out design patterns
Binds you to specific modules and tool chains
(catbox, joi, tv, boom, good, travelogue, yar)
All endpoints need to be created
manually
Developers may end up creating their
own non-optimized libraries
Every end point needs to be tested
Refactoring is painful, update everything
everywhere
Pattern 3: Convention - ORM
✤ Model driven development
✤ Any Datasource
✤ Automatic Rest API Generation
Router using LoopBack
DELETE /items/{id}
GET /items
GET /items/count
GET /items/findOne
GET /items/{id}
GET /items/{id}/exists
POST /items
PUT /items
PUT /items/{id}
Swagger using LoopBack
Router using Sails
Strengths andWeaknesses
Pros
Very quick RESTful API development
Convention over configuration (extends express)
Built in models ready to use (ORM)
RPC support, Web and Mobile SDKs
Data Connectors
Fully configurable when needed
Extensive documentation
Commercial support and full time team working on project
(Loopback)
Mobile Services (Push, Geo, Storage, Sync, Offline, File,
Device, User) - Loopback
Authentication, validation and Authorization
Cons
Higher learning curve
Opinionated
Pattern 4: Isomorphic JS & Full Stack
✤ Share Server Model with Client / Remoting
✤ Omni-Channel (Mobile, Web, IoT)
Node frameworks talk_hackerdojo
Node frameworks talk_hackerdojo
Pattern 5: MicroServices
✤ Decomposition
✤ Containment
✤ Flexibility
✤ Hyperscale
Relational Database Clustered Database Security Gateway Cloud
Laptop ( not requested but useful)
Connections
Tablet Phone IoT SDK API SERVER
Quick Example of Use
App Server
Relational Database Clustered Database Security Gateway C
Laptop ( not requested but useful)
Connections
Tablet Phone IoT SDK A
Quick Exam
App Server
Auth
Routing
Rate-Limit
Proxy
Mediation
Orchestration
Analytics
✤ RECOMPOSITION isn’t cutting it
✤ The new need is DE-COMPOSITION
SaaS Mobile IoTWeb
App Server API Server
HTML JSON
{JSON}
{JSON}
{JSON}<SOAP/XML>
<TABLE>
DesignTime
RunTime
Node frameworks talk_hackerdojo

More Related Content

PDF
Node summit workshop
PDF
Design patterns talk_node_summit
PPTX
Connect js nodejs_api_shubhra
PPTX
API Description Languages: Which is the Right One for Me?
PDF
React with rails a perfect combination to build modern web application
PDF
Ultimate Guide to 30+ API Documentation Solutions
PPTX
Another API-Blueprint, RAML and Swagger Comparison
PDF
Innovation and scale - drivers and pitfalls to building API driven business p...
Node summit workshop
Design patterns talk_node_summit
Connect js nodejs_api_shubhra
API Description Languages: Which is the Right One for Me?
React with rails a perfect combination to build modern web application
Ultimate Guide to 30+ API Documentation Solutions
Another API-Blueprint, RAML and Swagger Comparison
Innovation and scale - drivers and pitfalls to building API driven business p...

What's hot (20)

PPTX
Maintainable API Docs and Other Rainbow Colored Unicorns
PDF
apidays LIVE Australia 2021 - API Horror Stories from an Unnamed Coworking Co...
PDF
WordPress for iOS - Under the Hood
PDF
Rest api best practices – comprehensive handbook
PDF
Cloud-Native Roadshow - Microservices - Toronto
PDF
Incluit case studies 3.1
PDF
Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura
PPTX
3.html configuration
PDF
Building Self Documenting REST APIs
PDF
Internet of Things 101 - For software engineers
PDF
apidays LIVE Hong Kong 2021 - Multi-Protocol APIs at Scale in Adidas by Jesus...
PPTX
Running the-next-generation-of-cloud-native-applications-using-open-applicati...
PDF
apidays LIVE London 2021 - API design is where culture and tech meet each oth...
PDF
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
PPTX
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
PDF
Life After Microservices – Shifting the Boundaries
PDF
OSGi & Java in Industrial IoT - More than a Solid Trend - Essential to Scale ...
PDF
Ionic event: March 2021
PDF
APIs: What’s in it for me – How can APIs bring value to our Business (Philipp...
PDF
Reimagining Cordova: Building Cross-Platform Web Apps with Capacitor
Maintainable API Docs and Other Rainbow Colored Unicorns
apidays LIVE Australia 2021 - API Horror Stories from an Unnamed Coworking Co...
WordPress for iOS - Under the Hood
Rest api best practices – comprehensive handbook
Cloud-Native Roadshow - Microservices - Toronto
Incluit case studies 3.1
Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura
3.html configuration
Building Self Documenting REST APIs
Internet of Things 101 - For software engineers
apidays LIVE Hong Kong 2021 - Multi-Protocol APIs at Scale in Adidas by Jesus...
Running the-next-generation-of-cloud-native-applications-using-open-applicati...
apidays LIVE London 2021 - API design is where culture and tech meet each oth...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
Life After Microservices – Shifting the Boundaries
OSGi & Java in Industrial IoT - More than a Solid Trend - Essential to Scale ...
Ionic event: March 2021
APIs: What’s in it for me – How can APIs bring value to our Business (Philipp...
Reimagining Cordova: Building Cross-Platform Web Apps with Capacitor

Viewers also liked (9)

PPTX
Connect js nodejs_devops_shubhra
PPTX
Triangle Node.js DevOps
PPTX
OpenSource Node.js API Framework and Server for Enterprise
PPTX
Triangle Node Meetup : APIs in Minutes with Node.js
PPTX
Node Interactive : 7 years, 7 design patterns, will node continue to outshine
PPTX
Html5 devconf nodejs_devops_shubhra
PDF
Node.js Frameworks & Design Patterns Webinar
PDF
Toronto node js_meetup
PPTX
StrongLoop Overview
Connect js nodejs_devops_shubhra
Triangle Node.js DevOps
OpenSource Node.js API Framework and Server for Enterprise
Triangle Node Meetup : APIs in Minutes with Node.js
Node Interactive : 7 years, 7 design patterns, will node continue to outshine
Html5 devconf nodejs_devops_shubhra
Node.js Frameworks & Design Patterns Webinar
Toronto node js_meetup
StrongLoop Overview

Similar to Node frameworks talk_hackerdojo (20)

PDF
Picking the Right Node.js Framework for Your Use Case
PDF
Seattle StrongLoop Node.js Workshop
PDF
Prototyping like it is 2022
PDF
NodeJS
PDF
Building Killer RESTful APIs with NodeJs
PDF
"The working architecture of NodeJs applications" Viktor Turskyi
PDF
Node.js Course 2 of 2 - Advanced techniques
PPTX
Top 10 frameworks of node js
PDF
The working architecture of NodeJS applications, Виктор Турский
PDF
The working architecture of node js applications open tech week javascript ...
PDF
Viktor Turskyi "Effective NodeJS Application Development"
PDF
Modern UI Architecture_ Trends and Technologies in Web Development
PDF
Components of a Generic Web Application Architecture
PDF
Architecturing the software stack at a small business
KEY
20120306 dublin js
PDF
Building Large Scale Web Apps And Platforms
PDF
Embrace the front-end revolution - Sánchez-Mariscal
PDF
Embrace the frontend revolution
PDF
Modern API Design Patterns for Custom Applications.pdf
PDF
Client-side Development 2016
Picking the Right Node.js Framework for Your Use Case
Seattle StrongLoop Node.js Workshop
Prototyping like it is 2022
NodeJS
Building Killer RESTful APIs with NodeJs
"The working architecture of NodeJs applications" Viktor Turskyi
Node.js Course 2 of 2 - Advanced techniques
Top 10 frameworks of node js
The working architecture of NodeJS applications, Виктор Турский
The working architecture of node js applications open tech week javascript ...
Viktor Turskyi "Effective NodeJS Application Development"
Modern UI Architecture_ Trends and Technologies in Web Development
Components of a Generic Web Application Architecture
Architecturing the software stack at a small business
20120306 dublin js
Building Large Scale Web Apps And Platforms
Embrace the front-end revolution - Sánchez-Mariscal
Embrace the frontend revolution
Modern API Design Patterns for Custom Applications.pdf
Client-side Development 2016

Recently uploaded (20)

PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
top salesforce developer skills in 2025.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Introduction to Artificial Intelligence
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
System and Network Administration Chapter 2
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
AI in Product Development-omnex systems
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
Adobe Illustrator 28.6 Crack My Vision of Vector Design
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
top salesforce developer skills in 2025.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Introduction to Artificial Intelligence
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
System and Network Administration Chapter 2
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
AI in Product Development-omnex systems
Design an Analysis of Algorithms II-SECS-1021-03
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Navsoft: AI-Powered Business Solutions & Custom Software Development
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
How to Choose the Right IT Partner for Your Business in Malaysia
Wondershare Filmora 15 Crack With Activation Key [2025
Understanding Forklifts - TECH EHS Solution
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Operating system designcfffgfgggggggvggggggggg
wealthsignaloriginal-com-DS-text-... (1).pdf

Node frameworks talk_hackerdojo

  • 1. Date: 02/03/2015 Frameworks or a Design Pattern ? Shubhra Kar, Head of Products and Education @shubhrakar
  • 2. Bert Belder Ben Noordhuis Node Core Raymond Feng Ritchie Martori LoopBack / Express Core Sam Roberts Miroslav Bajtos Ryan Graham Plus 15 other full-time open source developers working on Node.js core, modules and tools. Contributing to over 100 open source modules. Supporting banks, retail, IoT companies, startups and internet companies on Node.js
  • 3. Patterns are not created, they evolve Right Now — Someone on Stage
  • 4. Pattern 1: DIY / Construction Blocks ✤ Un-opinionated ✤ Middleware
  • 7. Strengths andWeaknesses Pros Great starting point Low learning curve Nearly a standard for Node.js web middleware Fully customizable Targeted at browser, hence templating and rendering OOB Cons All endpoints need to be created manually Developers may end up creating their own non-optimized libraries Every end point needs to be tested Refactoring is painful, update everything everywhere No standards or prescription, DIY Pros Very stable and actively developed. Automatic DTrace support for all handlers on enabled platforms Built in throttling SPDY support Borrows from express but without unnecessary templating/rendering Strict API with full control over HTTP interactions Visibility into latency and app characteristics Cons All endpoints need to be created manually Developers may end up creating their own non-optimized libraries Every end point needs to be tested Refactoring is painful, update everything everywhere No standards or prescription, DIY Less documentation Express Restify
  • 8. Pattern 2: Configuration ✤ HAPI ✤ Express and Restify (maybe…)
  • 11. Strengths andWeaknesses Pros Supported by Walmart labs. Less known but getting momentum Very granular control over request handling Detailed API reference with support for document generation Significantly more functionality for building web servers Pseudo prescriptive with configuration centric approach Caching, Authentication and input validation available Plugin based architecture for scaling Cons Good construction blocks but left to your own devices to figure out design patterns Binds you to specific modules and tool chains (catbox, joi, tv, boom, good, travelogue, yar) All endpoints need to be created manually Developers may end up creating their own non-optimized libraries Every end point needs to be tested Refactoring is painful, update everything everywhere
  • 12. Pattern 3: Convention - ORM ✤ Model driven development ✤ Any Datasource ✤ Automatic Rest API Generation
  • 13. Router using LoopBack DELETE /items/{id} GET /items GET /items/count GET /items/findOne GET /items/{id} GET /items/{id}/exists POST /items PUT /items PUT /items/{id}
  • 16. Strengths andWeaknesses Pros Very quick RESTful API development Convention over configuration (extends express) Built in models ready to use (ORM) RPC support, Web and Mobile SDKs Data Connectors Fully configurable when needed Extensive documentation Commercial support and full time team working on project (Loopback) Mobile Services (Push, Geo, Storage, Sync, Offline, File, Device, User) - Loopback Authentication, validation and Authorization Cons Higher learning curve Opinionated
  • 17. Pattern 4: Isomorphic JS & Full Stack ✤ Share Server Model with Client / Remoting ✤ Omni-Channel (Mobile, Web, IoT)
  • 20. Pattern 5: MicroServices ✤ Decomposition ✤ Containment ✤ Flexibility ✤ Hyperscale
  • 21. Relational Database Clustered Database Security Gateway Cloud Laptop ( not requested but useful) Connections Tablet Phone IoT SDK API SERVER Quick Example of Use App Server Relational Database Clustered Database Security Gateway C Laptop ( not requested but useful) Connections Tablet Phone IoT SDK A Quick Exam App Server Auth Routing Rate-Limit Proxy Mediation Orchestration Analytics ✤ RECOMPOSITION isn’t cutting it
  • 22. ✤ The new need is DE-COMPOSITION SaaS Mobile IoTWeb App Server API Server HTML JSON {JSON} {JSON} {JSON}<SOAP/XML> <TABLE>