siddthota / bootstrap-crud

No more boiler plate CRUD for your express app!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

No more boiler plate CRUD for your express app!

Takes a simple class and dynamically creates your Mongoose schema and HTTP verb api routes.

  1. Bootstrap your app (see src/App.js)

  2. Extend the Crud class and pass in your options (see src/Models/Pet.js)

The following code:

import Crud from '../lib/Crud';

export default class Pet extends Crud {
    constructor() {
        const model = {
            name: String,
            breed: String,
            age: Number
        };

        super(model, {
            routeName: 'pets'
        }, {
            seed: !process.env.NODE_ENV || process.env.NODE_ENV === 'development',
            seedData: [{
                name: 'Cleo',
                breed: 'Ruler',
                age: 2
            }, {
                name: 'Max',
                breed: 'Pupper',
                age: 7
            }]
        });
    }
}

will make the following routes available:

  • localhost:3000/pets [GET]
  • localhost:3000/pets [POST]
  • localhost:3000/pets/:id [GET]
  • localhost:3000/pets/:id [PUT]
  • localhost:3000/pets/:id [DELETE]

More to follow soon!

About

No more boiler plate CRUD for your express app!


Languages

Language:JavaScript 100.0%