Skip to content
Rob edited this page Aug 1, 2013 · 2 revisions

Convener

Brian Mulloy (@landlessness)

Attendees

Kevin Swiber, Matt Dobson, Kris Kleva, Tony Tahmouch, Mitch Oliver, Adam Gainsley, Andreas Schmidt, Rob Raux, ...

Notes

Expectations

  • How to go from play to deploying?
  • How to sell node internally to the enterprise?
  • How are projects going for others?
  • What are the pains using node for APIs?

Analysis of Node for APIs

Pros

  • easy to build
  • smaller footprint than JVM (~12MB)
  • solid support on MS Azure
  • can move server work to JavaScript developers
  • async model is powerful
  • Oracle supports it (node.jar)
  • Chrome profiler

Cons

  • hard to find right libraries
  • still rev'ing quickly, hard to figure out impacts of change
  • async model is a challenge for some developers
  • debugging (especially in production) can be hard
  • Google (v8 engine) is typically not an enterprise standard

Popular Frameworks

  • Express (3 people with experience building APIs)
  • Restify (1)
  • Argo (1)
  • HAPI (0)
  • API Axle (0)

Framework Analysis

Express

Pros

  • Well documented
  • Small code base
  • modular
  • DIY approach
  • Stable
  • Strong community adoption
    • leaders are open about shortcomings
  • performance is good
  • all-in-one web UI and web APIs
  • Part of MEAN stack: Mango, Express, Angular, Node

Cons

  • focus is UI (not API)
  • response object is not a first class citizen
  • no pipeline metaphor

Argo

Pros

  • built around pipeline metaphor
  • NPM packages for:
    • rate limiting
    • compression
    • OAuth
    • caching
  • tight knot community
  • fast bug fixes
  • Proxy is a first-class feature

Cons

  • new
  • buggy still
  • small community
  • no support for regular expression routes (conscious design trade-off for performance)

Restify

Pros

  • rapid development
  • no UI stuff to distract from API focus
  • NPM packages:
    • XML to JSON
    • Rate Limiting
    • OAuth
  • dnode
  • routes have versions

Cons

  • smallish community
  • no response pipeline

HAPI

Pros

  • Created by Eran Hammer (OAuth dude, Walmart Labs)
  • Good tooling

Cons

  • Config vs Code
  • Slow
  • Code does not follow .js or node conventions

API Axle

Pros

  • generates proxies quickly
  • redis works out of the box
  • key management
  • proxy approach
  • API management focus
  • commercial support

Cons

  • small community
  • not an API server (focus is proxy)

Additional Resources