provide
Express middleware to "provide" resources as both JSON objects and rendered HTML documents.
provides assumes you have a template configured by the same name as the provided object.
Example
var app = ; /* configure view engine, using Jade (defaults to ./views/) */app; /* enable the use of res.provide */app; /* an example route */app; app;
Results
> curl -H "Accept: application/json" http://localhost:3000/thing
{"foo": "bar"}
Requesting an HTML version of that "thing" will give you exactly that:
> curl -H "Accept: text/html" http://localhost:3000/thing
<!DOCTYPE html>
<html>
...