This document discusses writing crawlable single page web applications. It describes using a client-server model where the server renders views for crawlers. This allows for good search engine optimization while keeping the benefits of a single page app like native-like experiences. Various frameworks that support this approach like Meteor, Derby and Rendr are described. Rendr is highlighted as an option that uses Backbone on the client with Express on the server, allowing APIs to be customized, though it is missing features common in frameworks. The direction of making Rendr's modules smaller and lazy loading views is suggested.
21. DERBY- very alpha, has zero IE support <10, owns data layer, but on
the upside has really rad OT logic built in.
Thursday, August 1, 13
22. DERBY- very alpha, has zero IE support <10, owns data layer, but on
the upside has really rad OT logic built in.
METEOR- renders server-side w/ phantom.js but only for select
userAgents, owns data layer, but hot code pushes are pretty sweet .
Thursday, August 1, 13
23. DERBY- very alpha, has zero IE support <10, owns data layer, but on
the upside has really rad OT logic built in.
METEOR- renders server-side w/ phantom.js but only for select
userAgents, owns data layer, but hot code pushes are pretty sweet .
RENDR- uses Backbone + Express, can use any API(s) you choose,
however there are no deep api docs yet.
Thursday, August 1, 13
24. DERBY- very alpha, has zero IE support <10, owns data layer, but on
the upside has really rad OT logic built in.
METEOR- renders server-side w/ phantom.js but only for select
userAgents, owns data layer, but hot code pushes are pretty sweet .
RENDR- uses Backbone + Express, can use any API(s) you choose,
however there are no deep api docs yet.
Thursday, August 1, 13
26. “Rendr is intended to be a building block along the way to this envisionsed future of web apps
that can be run on either side of the wire according to the needs of your application.”
Thursday, August 1, 13
27. •A collection of classes - BaseView,
BaseModel, BaseCollection, BaseApp,
ClientRouter, ServerRouter, so on...
•Express Middleware
What comes with Rendr?
Thursday, August 1, 13
28. •An asset pipeline
•many features that would ship with a
Framework, not a library
What’s Rendr missing?
Thursday, August 1, 13
31. •Break down into smaller modules
•Lazy load views & templates, etc
•Share routing logic between client & server
•Remove BB dependency?
Direction
Thursday, August 1, 13
32. • rendr https://github.com/airbnb/rendr
• app template https://github.com/airbnb/rendr-app-
template
• rendr-cli https://github.com/technicolorenvy/rendr-cli
• chart stealing from http://nerds.airbnb.com/slides-and-
video-from-spike-brehms-tech-talk/
• holy grail http://nerds.airbnb.com/weve-launched-our-
first-nodejs-app-to-product/
oh, the places you’ll go
Thursday, August 1, 13