lowdb-api

    1.0.3 • Public • Published

    lowdb api

    lowdb-api is an Express middleware that interpret all requests as a real RESTful API.

    Features

    • Support common http methods (get, post, put and delete).
    • Custom API prefix.
    • Relies on lowdb.
    • Accept custom lowdb adapter.

    Motivation

    During initial development process, I usually want to interact with an API, but I don't want to spend time writing one. I was looking for a catch-all RESTful endpoint where I could do commons CRUD operations. Unfortunately, I haven't found it... therefore, I created: lowdb-api.

    Installation

    npm install lowdb-api
    

    Configuration

    const path = require('path')
    const express = require('express')
    const bodyParser = require('body-parser')
    const lowdbApi = require('lowdb-api')
     
    const app = express()
    const file = path.join(__dirname, './db.json')
    const options = {}
     
    app.use(bodyParser.json())
    app.use(lowdbApi(file, options))

    Options

    • prefix - (string, default: null) specify the prefix if you want to mount lowdb-api under a path (example: /api/v1)
    • adapter - (string, default: lowdb/adapters/FileSync) a lowdb adapter.

    Usage

    For the aforementioned configuration the following paths will be interpreted:

    • GET: /resources - list all resources.
    • GET: /resources/:id - get a resource by its id.
    • POST: /resources - create a new resource in the list.
    • PUT: /resources/:id - update an existing resource.
    • DELETE: /resources/:id - delete an existing resource.

    Issues

    If you spot a bug please create an issue.

    Development

    1. yarn
    2. yarn test or yarn test -- --watch

    Install

    npm i lowdb-api

    DownloadsWeekly Downloads

    9

    Version

    1.0.3

    License

    MIT

    Last publish

    Collaborators

    • avatar