THIS PROJECT IS NOT MAINTAINED. PLEASE USE https://github.com/pedronauck/micro-router
Minimal routing layer for building JSON APIs with Zeit's Micro
yarn add micro micro-api
Declare your API's routes
// index.js
const microApi = require('micro-api')
const handlers = require('./handlers')
const api = microApi([
{
method: 'post',
path: '/foos',
handler: handlers.createFoo,
},
{
method: 'get',
path: '/foos/:fooId',
handler: handlers.showFoo,
},
])
module.exports = api
Define some micro-compatible handlers
// handlers.js
const uuid = require('uuid')
// In memory database
const foos = []
const createFoo = ({ body }) => {
// Build up the new item
const newFoo = { ...body, id: uuid() }
// Add it to the database
foos.push(newFoo)
return newFoo
}
// Find and return by id
const showFoo = ({ params: { fooId } }) => foos.find(f => f.id === fooId)
module.exports = { createFoo, showFoo }
micro -p 3000 ./index.js
See Micro documentation for complete usage.