Skip to content
🍃 Rest API generation for Koa
JavaScript CoffeeScript Makefile
Latest commit 55724c6 May 30, 2015 Tomas Holas Switch from co-body to github.com/tomaash/koa-body-parser (this fork …
…works when called multiple times and does not hang on some simple put requests) and bump version
Failed to load latest commit information.
docs update docs Mar 31, 2014
example
lib
test
.gitignore delete log May 27, 2015
.travis.yml add mongoDB to travis Mar 29, 2014
Makefile
README.md
gulpfile.coffee
gulpfile.js
package.json

README.md

Koa mongo REST NPM version Dependency Status Build Status

Easy REST api for koa server

NPM

Installation

Install using npm:

npm install koa-mongo-rest

Usage

Require library

generateApi = require('koa-mongo-rest');

Create mongoose model

mongoUrl = '127.0.0.1:27017';
mongoose = require('mongoose');
mongoose.connect(mongoUrl);

schema = new mongoose.Schema({
  email: String,
  name: String,
  password: String,
  address: String,
  zipcode: Number,
  lists: Array
});

model = mongoose.model('users', schema);

Create server

var koa = require('koa');
var router = require('koa-router');

var app = koa();

//router is required
app.use(router(app));


//add REST routes to your app. Prefix is optional
generateApi(app, model, '/api');

app.listen(process.env.PORT || 5000);

Following REST API is now created for you:

HTTP Verb /users /users/:id
GET Get all documents, or documents that match the query.
You can use mongoose find conditions, limit, skip and sort.
For example:
/api/users?conditions={"name":"john"}&limit=10&skip=1&sort=-zipcode
Get the addressed document.
POST Create a new document and send it back. Update the addressed document with specified attributes.
PUT Create a new document and send it back. Replace the addressed document.
DELETE n/a Delete the addressed document.
PATCH n/a Update the addressed document with specified attributes.
Something went wrong with that request. Please try again.