A nodejs web lib that adds some sugar to the routejs lib
CoffeeScript JavaScript
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib
test
.gitignore
index.js
package.json
readme.md

readme.md

Apprentice

Hey Web Frameworks!

http://blog.riskmanagers.us/wp-content/uploads/2010/11/donaldtrumpyourefired.jpg

YOU'RE FIRED!

The Apprentice makes it simple to get started creating an html and/or json web application in no time, with as little sugar as possible.

Install

npm install apprentice

Dependencies

  • linchpin
npm install linchpin

Usage

var app = require('apprentice'),
  pin = require('linchpin');

pin.on('GET', function(req, res) { res.text('Come in to the Board Room'); });
pin.on('POST/lose', function(req, res) { res.text('You\'re fired!'); });
pin.on('PUT/win', function(req, res) { res.text('You\'re hired!'); });
pin.on('DELETE/110%', function(req, res) { res.text('Thats Great!'); });

app.httpServer.listen(3000);

Features

Response Macros

  • text (body, status=200)

res.text is a shortcut to send a plain text response body back to the caller.

pin.on('GET', function(req, res) {res.text 'hello world');});
  • json (body, status=200)

res.json is a shortcut to send a json document to the caller.

pin.on('GET', function(req, res) {res.json {foo: 'bar'});});
  • html (body, status=200)

res.html is a shortcut to send a html document to the caller.

pin.on('GET', function(req, res) {res.html "<h1>Hello World</h1>");});

FAQ

How do I manage static assets

You can use filed:

pin.on('GET/favicon.ico', function(req, res) { filed("#{__dirname}/../assets/favicon.ico").pipe(res); });
pin.on 'GET/assets/*/*', function(req, res) { filed("#{__dirname}/../#{req.url}").pipe(res); });