That's where Node.js really shines. The full-stack MVC frameworks are bundled with scaffolding, template engines, websocket and persistence libraries to allow you build real-time scalable web apps.
-
+
@@ -803,243 +145,7 @@
For those who use rich-client/front-end MVC frameworks (or not) and just need to spin up a fast Node.js REST API server.
-
+
diff --git a/projects.js b/projects.js
new file mode 100644
index 0000000..c0cd934
--- /dev/null
+++ b/projects.js
@@ -0,0 +1,1719 @@
+var projects = [
+ {
+ name: 'Express',
+ homepage: 'http://expressjs.com/',
+ github: {
+ user: 'expressjs',
+ repo: 'express'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/expressjs/express'
+ },
+ {
+ title: 'NPM',
+ url: 'http://npmjs.org/express'
+ },
+ {
+ title: 'todo',
+ url: 'http://github.com/azat-co/todo-express'
+ },
+ {
+ title: 'rest api',
+ url: 'http://github.com/azat-co/rest-api-express'
+ }
+ ]
+ },
+ {
+ name: 'hapi',
+ homepage: 'http://hapijs.com/',
+ github: {
+ user: 'hapijs',
+ repo: 'hapi'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'http://github.com/hapijs/hapi'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/hapi'
+ },
+ {
+ title: 'rest api',
+ url: 'https://github.com/azat-co/practicalnode/tree/master/ch8'
+ }
+ ]
+ },
+ {
+ name: 'flatiron',
+ homepage: 'http://flatironjs.org/',
+ github: {
+ user: 'flatiron',
+ repo: 'flatiron'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/flatiron/flatiron'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/flatiron'
+ }
+ ]
+ },
+ {
+ name: 'locomotive',
+ homepage: 'http://locomotivejs.org/',
+ github: {
+ user: 'jaredhanson',
+ repo: 'locomotive'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/jaredhanson/locomotive'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/locomotive'
+ }
+ ]
+ },
+ {
+ name: 'total.js',
+ homepage: 'http://www.totaljs.com',
+ github: {
+ user: 'totaljs',
+ repo: 'framework'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/totaljs/framework'
+ },
+ {
+ title: 'NPM',
+ url: 'https://npmjs.org/package/total.js'
+ }
+ ]
+ },
+ {
+ name: 'koa.js',
+ homepage: 'http://koajs.com/',
+ github: {
+ user: 'koajs',
+ repo: 'koa'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/koajs/koa'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/koa'
+ }
+ ]
+ },
+ {
+ name: 'TWEE.IO',
+ homepage: 'http://twee.io/',
+ github: {
+ user: 'tweeio',
+ repo: 'twee-framework'
+ },
+ tags: [
+ 'sinatra',
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/tweeio/twee-framework'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/twee'
+ },
+ {
+ title: 'Official Site',
+ url: 'http://twee.io'
+ }
+ ]
+ },
+ {
+ name: 'diet.js',
+ homepage: 'http://dietjs.com/',
+ github: {
+ user: 'adamhalasz',
+ repo: 'diet'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/adamhalasz/diet'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/diet'
+ },
+ {
+ title: 'Official Site',
+ url: 'http://dietjs.com'
+ }
+ ]
+ },
+ {
+ name: 'Flicker.js',
+ homepage: 'https://flickerstudio.github.io/flickerjs',
+ github: {
+ user: 'FlickerStudio',
+ repo: 'flickerjs'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/FlickerStudio/flickerjs'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/flickerjs'
+ },
+ {
+ title: 'Rest API Example',
+ url: 'https://github.com/FlickerStudio/api_rest_example'
+ }
+ ]
+ },
+ {
+ name: 'ZinkyJS',
+ homepage: 'https://github.com/zinkyJS/zinky',
+ github: {
+ user: 'zinkyjs',
+ repo: 'zinky'
+ },
+ tags: [
+ 'sinatra'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/zinkyJS/zinky'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/zinky'
+ }
+ ]
+ },
+ {
+ name: 'Nodal',
+ homepage: 'http://nodaljs.com/',
+ github: {
+ user: 'keithwhor',
+ repo: 'nodal'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/keithwhor/nodal'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/nodal'
+ }
+ ]
+ },
+ {
+ name: 'Strapi',
+ homepage: 'http://strapi.io/',
+ github: {
+ user: 'strapi',
+ repo: 'strapi'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/wistityhq/strapi'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/strapi'
+ }
+ ]
+ },
+ {
+ name: 'CompoundJS',
+ homepage: 'http://compoundjs.com/',
+ annotation: 'former railswayjs',
+ github: {
+ user: '1602',
+ repo: 'compound'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/1602/compound'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/compound'
+ }
+ ]
+ },
+ {
+ name: 'geddy',
+ homepage: 'http://geddyjs.org/',
+ github: {
+ user: 'geddy',
+ repo: 'geddy'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/geddy/geddy'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/geddy'
+ }
+ ]
+ },
+ {
+ name: 'Sails.js',
+ homepage: 'http://sailsjs.org/',
+ github: {
+ user: 'balderdashy',
+ repo: 'sails'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/balderdashy/sails/'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/sails'
+ }
+ ]
+ },
+ {
+ name: 'Adonis',
+ homepage: 'http://adonisjs.com',
+ github: {
+ user: 'adonisjs',
+ repo: 'adonis-framework'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/adonisjs/adonis-framework/'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/adonis-framework'
+ }
+ ]
+ },
+ {
+ name: 'RhapsodyJS',
+ homepage: 'http://rhapsodyjs.github.io/',
+ github: {
+ user: 'rhapsodyjs',
+ repo: 'RhapsodyJS'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/rhapsodyjs/RhapsodyJS'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/rhapsody'
+ },
+ {
+ title: 'Examples',
+ url: 'https://github.com/rhapsodyjs/RhapsodyJS-examples'
+ }
+ ]
+ },
+ {
+ name: 'ThinkJS',
+ homepage: 'https://thinkjs.org/',
+ github: {
+ user: 'thinkjs',
+ repo: 'thinkjs'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/thinkjs/thinkjs'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/thinkjs'
+ }
+ ]
+ },
+ {
+ name: 'Trails',
+ homepage: 'http://www.trailsjs.io/',
+ github: {
+ user: 'trailsjs',
+ repo: 'trails'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/trailsjs/trails'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/trails'
+ }
+ ]
+ },
+ {
+ name: 'KambojaJS',
+ homepage: 'http://kambojajs.com/',
+ github: {
+ user: 'kambojajs',
+ repo: 'kamboja'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/kambojajs/kamboja'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/kamboja'
+ }
+ ]
+ },
+ {
+ name: 'JS-Web',
+ homepage: 'http://js-web-framework.com/',
+ github: {
+ user: 'simonsmadsen',
+ repo: 'js-web'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/simonsmadsen/js-web'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/js-web'
+ }
+ ]
+ },
+ {
+ name: 'FoalTS',
+ homepage: 'https://foalts.org/',
+ annotation: 'TypeScript',
+ github: {
+ user: 'FoalTS',
+ repo: 'foal'
+ },
+ tags: [
+ 'rails'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/FoalTS/foal'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/@foal/core'
+ }
+ ]
+ },
+ {
+ name: 'AllcountJS',
+ homepage: 'http://allcountjs.com',
+ github: {
+ user: 'allcount',
+ repo: 'allcountjs'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/allcount/allcountjs'
+ },
+ {
+ title: 'NPM CLI',
+ url: 'https://www.npmjs.org/package/allcountjs-cli'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/allcountjs'
+ },
+ {
+ title: 'Gitter',
+ url: 'https://gitter.im/allcount/allcountjs'
+ }
+ ]
+ },
+ {
+ name: 'Derby',
+ homepage: 'http://derbyjs.com',
+ github: {
+ user: 'derbyjs',
+ repo: 'derby'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/derbyjs/derby'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/derby'
+ }
+ ]
+ },
+ {
+ name: 'Feathers',
+ homepage: 'http://feathersjs.com/',
+ github: {
+ user: 'feathersjs',
+ repo: 'feathers'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/feathersjs/feathers'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/feathers'
+ }
+ ]
+ },
+ {
+ name: 'SocketCluster',
+ homepage: 'http://socketcluster.io/',
+ github: {
+ user: 'socketcluster',
+ repo: 'socketcluster'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/socketcluster/socketcluster'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/socketcluster'
+ }
+ ]
+ },
+ {
+ name: 'SocketStream',
+ homepage: 'http://socketstream.org',
+ github: {
+ user: 'socketstream',
+ repo: 'socketstream'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'http://github.com/socketstream/socketstream'
+ },
+ {
+ title: 'NPM',
+ url: 'https://npmjs.org/package/socketstream'
+ }
+ ]
+ },
+ {
+ name: 'MEAN.js',
+ homepage: 'http://meanjs.org/',
+ github: {
+ user: 'meanjs',
+ repo: 'mean'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/meanjs/mean'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/generator-meanjs'
+ }
+ ]
+ },
+ {
+ name: 'MEAN.io',
+ homepage: 'http://mean.io/',
+ github: {
+ user: 'linnovate',
+ repo: 'mean'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/linnovate/mean'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/meanio'
+ }
+ ]
+ },
+ {
+ name: 'Meteor',
+ homepage: 'http://meteor.com/',
+ github: {
+ user: 'meteor',
+ repo: 'meteor'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/meteor/meteor'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/meteor'
+ }
+ ]
+ },
+ {
+ name: 'Meatier',
+ homepage: 'https://github.com/mattkrick/meatier',
+ github: {
+ user: 'mattkrick',
+ repo: 'meatier'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/mattkrick/meatier'
+ }
+ ]
+ },
+ {
+ name: 'Mojito',
+ homepage: 'http://developer.yahoo.com/cocktails/mojito/',
+ github: {
+ user: 'yahoo',
+ repo: 'mojito'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/yahoo/mojito'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/mojito'
+ }
+ ]
+ },
+ {
+ name: 'Seeds.js',
+ homepage: 'http://seedsjs.com/',
+ github: {
+ user: 'terminalvelocity',
+ repo: 'seeds.js'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/terminalvelocity/seeds.js'
+ },
+ {
+ title: 'NPM',
+ url: 'https://npmjs.org/package/seeds'
+ },
+ {
+ title: 'Docs',
+ url: 'http://docs.seedsjs.com'
+ },
+ {
+ title: 'Gitter Chat',
+ url: 'https://gitter.im/terminalvelocity/seeds.js'
+ }
+ ]
+ },
+ {
+ name: 'SANE',
+ homepage: 'http://sanestack.com/',
+ github: {
+ user: 'artificialio',
+ repo: 'sane'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/artificialio/sane'
+ },
+ {
+ title: 'NPM',
+ url: 'https://npmjs.org/package/sane-cli'
+ }
+ ]
+ },
+ {
+ name: 'COKE',
+ homepage: 'http://coke-js.org',
+ github: {
+ user: 'dreamerslab',
+ repo: 'coke'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/dreamerslab/coke'
+ },
+ {
+ title: 'NPM',
+ url: 'https://npmjs.org/package/coke'
+ }
+ ]
+ },
+ {
+ name: 'Sleekjs',
+ homepage: 'http://sleekjs.com/',
+ github: {
+ user: 'cubettech',
+ repo: 'sleekjs'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/cubettech/sleekjs'
+ },
+ {
+ title: 'NPM',
+ url: 'https://npmjs.org/package/sleek.js'
+ }
+ ]
+ },
+ {
+ name: 'Danf',
+ homepage: 'https://github.com/gnodi/danf',
+ github: {
+ user: 'gnodi',
+ repo: 'danf'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/gnodi/danf'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/danf'
+ }
+ ]
+ },
+ {
+ name: 'Catberry',
+ homepage: 'http://catberry.org',
+ github: {
+ user: 'catberry',
+ repo: 'catberry'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/catberry/catberry'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/catberry'
+ }
+ ]
+ },
+ {
+ name: 'Nuke.js',
+ homepage: 'http://nukejs.com/',
+ github: {
+ user: 'FREEZX',
+ repo: 'nuke.js'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/FREEZX/nuke.js'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/generator-nukejs'
+ }
+ ]
+ },
+ {
+ name: 'We.js',
+ homepage: 'http://wejs.org',
+ github: {
+ user: 'wejs',
+ repo: 'we'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/wejs/we'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/we'
+ },
+ {
+ title: 'Gitter',
+ url: 'https://gitter.im/wejs/we'
+ },
+ {
+ title: 'Google groups',
+ url: 'https://groups.google.com/forum/#!forum/we-js'
+ }
+ ]
+ },
+ {
+ name: 'seneca.js',
+ homepage: 'http://senecajs.org',
+ github: {
+ user: 'senecajs',
+ repo: 'seneca'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/senecajs/seneca'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/seneca'
+ },
+ {
+ title: 'Getting started',
+ url: 'http://senecajs.org/get-started/'
+ },
+ {
+ title: 'Gitter',
+ url: 'https://gitter.im/senecajs/seneca'
+ }
+ ]
+ },
+ {
+ name: 'Keystone.js',
+ homepage: 'http://keystonejs.com/',
+ github: {
+ user: 'keystonejs',
+ repo: 'keystone'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'http://github.com/keystonejs/keystone'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/keystone'
+ },
+ {
+ title: 'Getting started',
+ url: 'http://keystonejs.com/getting-started/'
+ },
+ {
+ title: 'Gitter',
+ url: 'https://gitter.im/keystonejs/keystone'
+ }
+ ]
+ },
+ {
+ name: 'Horizon',
+ homepage: 'http://horizon.io',
+ github: {
+ user: 'rethinkdb',
+ repo: 'horizon'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/rethinkdb/horizon'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/horizon'
+ },
+ {
+ title: 'Getting started',
+ url: 'http://horizon.io/docs/getting-started/'
+ },
+ {
+ title: 'Discuss',
+ url: 'https://discuss.horizon.io/'
+ }
+ ]
+ },
+ {
+ name: 'Apogeu',
+ homepage: 'https://apogeu.github.io/',
+ github: {
+ user: 'apogeu',
+ repo: 'apogeu'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/apogeu/apogeu'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/apogeu'
+ },
+ {
+ title: 'Getting started',
+ url: 'https://apogeu.github.io/get-started'
+ }
+ ]
+ },
+ {
+ name: 'monument',
+ homepage: 'http://monumentjs.com/',
+ github: {
+ user: 'ansble',
+ repo: 'monument'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/ansble/monument/'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/monument'
+ }
+ ]
+ },
+ {
+ name: 'x2node | Resources',
+ homepage: 'http://x2node.com/',
+ github: {
+ user: 'boylesoftware',
+ repo: 'x2node-ws-resources'
+ },
+ tags: [
+ 'full-stack'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/boylesoftware/x2node-ws-resources'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/x2node-ws-resources'
+ }
+ ]
+ },
+ {
+ name: 'Ivy',
+ homepage: 'http://ivyframework.com',
+ github: {
+ user: 'ivyjs',
+ repo: 'framework'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/ivyjs/framework'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/ivyframework'
+ }
+ ]
+ },
+ {
+ name: 'Restocat',
+ homepage: 'https://github.com/restocat/restocat',
+ github: {
+ user: 'restocat',
+ repo: 'restocat'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/restocat/restocat'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/restocat'
+ }
+ ]
+ },
+ {
+ name: 'actionHero.js',
+ homepage: 'http://actionherojs.com/',
+ github: {
+ user: 'evantahler',
+ repo: 'actionhero'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/evantahler/actionhero'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/actionhero'
+ }
+ ]
+ },
+ {
+ name: 'Frisby',
+ homepage: 'http://frisbyjs.com/',
+ github: {
+ user: 'vlucas',
+ repo: 'frisby'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/vlucas/frisby'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/frisby'
+ }
+ ]
+ },
+ {
+ name: 'restling',
+ homepage: 'https://github.com/lucasfeliciano/restling',
+ github: {
+ user: 'lucasfeliciano',
+ repo: 'restling'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/lucasfeliciano/restling'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/restling'
+ }
+ ]
+ },
+ {
+ name: 'restify',
+ homepage: 'http://mcavage.github.io/node-restify/',
+ github: {
+ user: 'mcavage',
+ repo: 'node-restify'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/mcavage/node-restify'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/restify'
+ }
+ ]
+ },
+ {
+ name: 'restmvc',
+ homepage: 'https://github.com/keithnlarsen/restmvc.js',
+ github: {
+ user: 'keithnlarsen',
+ repo: 'restmvc.js'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/keithnlarsen/restmvc.js'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/restmvc.js'
+ }
+ ]
+ },
+ {
+ name: 'percolator',
+ homepage: 'http://percolatorjs.com',
+ github: {
+ user: 'cainus',
+ repo: 'percolator'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/cainus/percolator'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/percolator'
+ }
+ ]
+ },
+ {
+ name: 'LoopBack',
+ homepage: 'http://loopback.io/',
+ github: {
+ user: 'strongloop',
+ repo: 'loopback'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/strongloop/loopback'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/loopback'
+ }
+ ]
+ },
+ {
+ name: 'Fortune.js',
+ homepage: 'http://fortunejs.com',
+ github: {
+ user: 'daliwali',
+ repo: 'fortune'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/daliwali/fortune'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/fortune'
+ }
+ ]
+ },
+ {
+ name: 'facet',
+ homepage: 'http://facet.github.io',
+ github: {
+ user: 'facet',
+ repo: 'facet.github.io'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/facet'
+ }
+ ]
+ },
+ {
+ name: 'Raddish',
+ homepage: 'http://getraddish.com',
+ github: {
+ user: 'getraddished',
+ repo: 'raddish'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/getraddished/raddish'
+ }
+ ]
+ },
+ {
+ name: 'Restberry',
+ homepage: 'http://restberry.com',
+ github: {
+ user: 'materik',
+ repo: 'restberry'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/materik/restberry'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/restberry'
+ }
+ ]
+ },
+ {
+ name: 'Gugamarket',
+ homepage: 'http://pliik.github.io/gugamarket/',
+ github: {
+ user: 'pliik',
+ repo: 'gugamarket'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/pliik/gugamarket'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/gugamarket'
+ }
+ ]
+ },
+ {
+ name: 'Nest',
+ homepage: 'https://kamilmysliwiec.gitbooks.io/nest/',
+ github: {
+ user: 'kamilmysliwiec',
+ repo: 'nest'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/kamilmysliwiec/nest'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/nest.js'
+ }
+ ]
+ },
+ {
+ name: 'microlet',
+ homepage: 'https://borislemke.gitbooks.io/microlet/',
+ github: {
+ user: 'borislemke',
+ repo: 'microlet'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/borislemke/microlet'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/microlet'
+ }
+ ]
+ },
+ {
+ name: 'Moleculer',
+ homepage: 'https://moleculer.services/',
+ github: {
+ user: 'ice-services',
+ repo: 'moleculer'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/ice-services/moleculer'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.com/package/moleculer'
+ }
+ ]
+ },
+ {
+ name: 'x2node | Web Services',
+ homepage: 'http://x2node.com/',
+ github: {
+ user: 'boylesoftware',
+ repo: 'x2node-ws'
+ },
+ tags: [
+ 'rest'
+ ],
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/boylesoftware/x2node-ws'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/x2node-ws'
+ }
+ ]
+ },
+ {
+ name: 'Connect',
+ homepage: 'http://www.senchalabs.org/connect/',
+ github: {
+ user: 'senchalabs',
+ repo: 'connect'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/senchalabs/connect'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/connect'
+ }
+ ]
+ },
+ {
+ name: 'Kraken',
+ homepage: 'http://krakenjs.com/',
+ github: {
+ user: 'krakenjs',
+ repo: 'kraken-js'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/krakenjs/kraken-js'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/kraken-js'
+ }
+ ]
+ },
+ {
+ name: 'ewdGateway2',
+ homepage: 'https://github.com/robtweed/ewdGateway2',
+ github: {
+ user: 'robtweed',
+ repo: 'ewdGateway2'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/robtweed/ewdGateway2'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/ewdgateway2'
+ }
+ ]
+ },
+ {
+ name: 'Wintersmith',
+ homepage: 'https://github.com/jnordberg/wintersmith',
+ github: {
+ user: 'jnordberg',
+ repo: 'wintersmith'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/jnordberg/wintersmith'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/wintersmith'
+ }
+ ]
+ },
+ {
+ name: 'docpad',
+ homepage: 'http://docpad.org',
+ github: {
+ user: 'docpad',
+ repo: 'docpad'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/docpad/docpad'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/docpad'
+ }
+ ]
+ },
+ {
+ name: 'Blacksmith',
+ homepage: 'http://blacksmith.jit.su/',
+ github: {
+ user: 'flatiron',
+ repo: 'blacksmith'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/flatiron/blacksmith'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/blacksmith'
+ }
+ ]
+ },
+ {
+ name: 'romulus',
+ homepage: 'https://github.com/felixge/node-romulus',
+ github: {
+ user: 'felixge',
+ repo: 'node-romulus'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/felixge/node-romulus'
+ }
+ ]
+ },
+ {
+ name: 'Petrify',
+ homepage: 'https://github.com/caolan/petrify',
+ github: {
+ user: 'caolan',
+ repo: 'petrify'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/caolan/petrify'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/petrify'
+ }
+ ]
+ },
+ {
+ name: 'Tower.js',
+ homepage: 'http://tower.github.io',
+ github: {
+ user: 'tower',
+ repo: 'tower'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/tower/tower'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/tower'
+ }
+ ]
+ },
+ {
+ name: 'Impress',
+ homepage: 'https://github.com/tshemsedinov/impress',
+ github: {
+ user: 'tshemsedinov',
+ repo: 'impress'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/tshemsedinov/impress'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/impress'
+ }
+ ]
+ },
+ {
+ name: 'Rendr',
+ homepage: 'https://github.com/rendrjs/rendr',
+ github: {
+ user: 'rendrjs',
+ repo: 'rendr'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/airbnb/rendr'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/rendr'
+ }
+ ]
+ },
+ {
+ name: 'Backnode',
+ homepage: 'https://github.com/mklabs/backnode',
+ github: {
+ user: 'mklabs',
+ repo: 'backnode'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/mklabs/backnode'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/backnode'
+ }
+ ]
+ },
+ {
+ name: 'Sequelize',
+ homepage: 'http://sequelizejs.com/',
+ github: {
+ user: 'sequelize',
+ repo: 'sequelize'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/sequelize/sequelize'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/sequelize'
+ }
+ ]
+ },
+ {
+ name: 'Cylon.js',
+ homepage: 'http://cylonjs.com/',
+ github: {
+ user: 'hybridgroup',
+ repo: 'cylon'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/hybridgroup/cylon'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/cylon'
+ }
+ ]
+ },
+ {
+ name: 'Virgilio.js',
+ homepage: 'http://icemobilelab.github.io/virgilio/',
+ github: {
+ user: 'icemobilelab',
+ repo: 'virgilio'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/icemobilelab/virgilio'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/virgilio'
+ }
+ ]
+ },
+ {
+ name: 'SHPS',
+ homepage: 'https://shps.io',
+ github: {
+ user: 'Skellods-Network',
+ repo: 'SHPS4Node'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/Skellods-Network/SHPS4Node'
+ },
+ {
+ title: 'Gitter',
+ url: 'https://gitter.im/Skellods-Network/SHPS4Node'
+ }
+ ]
+ },
+ {
+ name: 'x2node | Database Operations',
+ homepage: 'http://x2node.com/',
+ github: {
+ user: 'boylesoftware',
+ repo: 'x2node-dbos'
+ },
+ links: [
+ {
+ title: 'GitHub',
+ url: 'https://github.com/boylesoftware/x2node-dbos'
+ },
+ {
+ title: 'NPM',
+ url: 'https://www.npmjs.org/package/x2node-dbos'
+ }
+ ]
+ }
+];