koa-mongo-rest

generate REST API with koa and mongo

Koa mongo REST

Easy REST api for koa server

Install using npm:

npm install koa-mongo-rest

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
GETGet all documents, or documents that match the query.
You can use [mongoose find conditions] (http://mongoosejs.com/docs/queries.html), limit, skip and sort.
For example:
/api/users?conditions={"name":"john"}&limit=10&skip=1&sort=-zipcode
Get the addressed document.
POSTCreate a new document and send it back.Update the addressed document with specified attributes.
PUTCreate a new document and send it back.Replace the addressed document.
DELETEn/aDelete the addressed document.
PATCHn/aUpdate the addressed document with specified attributes.