Skip to content

Instantly share code, notes, and snippets.

@criso
criso / equivalent.js
Created Aug 24, 2011 — forked from tj/equivalent.js
example of backbone-style routing with Express
View equivalent.js
app.get('/help', function(req, res){
res.send('some help');
});
app.get('/search/:query/p:page', function(req, res){
var query = req.params.query
, page = req.params.page;
res.send('search "' + query + '", page ' + (page || 1));
});
@criso
criso / exports.readonly.js
Created Aug 13, 2011 — forked from 3rd-Eden/exports.readonly.js
Different ways of configuring nodejs
View exports.readonly.js
/**
* Configuration. This file is read only
*
* @api private
*/
module.exports = Object.freeze({
pewpew: "moo"
});
@criso
criso / api.js
Created Jul 24, 2011 — forked from fwielstra/api.js
Our controller refactored
View api.js
module.exports = function(Thread, Post) {
return {
post: function(req, res) {
new Thread({title: req.body.title, author: req.body.author}).save();
},
list: function(req, res) {
Thread.find(function(err, threads) {
res.send(threads);
});
@criso
criso / api-test.js
Created Jul 24, 2011 — forked from fwielstra/api-test.js
An example unit test for our save thread method
View api-test.js
var nodeunit = require('nodeunit');
exports['API'] = nodeunit.testCase({
'The show() API method returns a specific thread by title and its replies by threadid': function(test) {
test.expect(4);
// our mock data
var posts = [{post: 'test'}, {post: 'test2'}];
var thread = {_id: '1234', title: 'my thread'};
@criso
criso / api.js
Created Jul 24, 2011 — forked from fwielstra/api.js
An example NodeJS / Mongoose / Express application based on their respective tutorials
View api.js
/* The API controller
Exports 3 methods:
* post - Creates a new thread
* list - Returns a list of threads
* show - Displays a thread and its posts
*/
var Thread = require('../models/thread.js');
var Post = require('../models/post.js');
View primer.js
!function() {
var doc = document,
htm = doc.documentElement,
lct = null, // last click target
nearest = function(elm, tag) {
while (elm && elm.nodeName != tag) {
elm = elm.parentNode;
}
return elm;
};