fastexpress

2.0.0 • Public • Published

fastexpress

Open Source Love Build Status CircleCI Maintainability Test Coverage GitHub license npm version Open Source Helpers PRs Welcome


fastexpress is a library designed to speed up the development of APIs with express. It's has a list of functionalities to create APIs with a small amount of lines of code, with possibility to customize it.

The main functionalities is:

  • Improve the creation of model endpoints.
  • Create CRUDs with few rows.
  • Add rich integration with templates, allowing filters and joins.
  • Add secure endpoints through token usage (jwt).

Installation

  • npm install --global fastexpress
  • fastexpress new [your-project-name]
  • cd your-project-name
  • npm install or yarn
  • cp config/example.database.json config/database.json
  • npm run sequelize db:create

Generate a resource

On root of your project

  • fastexpress resource [resourceName] --attributes title:string check:boolean birthday:date
  • npm run sequelize db:migrate
  • npm run sequelize db:seed:all # (optional)

Attributes

  • string
  • number or integer
  • text
  • boolean
  • date or datetime

After that, you just need import and add the resource on Router. Like this on src/routers.js file:

const { Resources } = require('fastexpress');
const [ResourceName] = require('./resources/[ResourceName]');
 
const routers = new Resources({
  namespace: '/api/v1/',
})
  .add('[resourceName]', [ResourceName])
  .getRouters();

Development

  • npm run dev

Basic Endpoints

  • [get] /api
  • [get] /api/v1

Resources Endpoints

  • [get] /api/v1/[resourceName] - to list resource
  • [post] /api/v1/[resourceName] - to add a new entity
  • [get] /api/v1/[resourceName]/:id - to get a one entity
  • [delete] /api/v1/[resourceName]/:id - to delete a entity
  • [put] /api/v1/[resourceName]/:id - to edit a entity

Examples

Basic

This is a basic example of usage of the fastexpress.

fastexpress development

CONTRIBUTING.md

Open Source

We uses the MIT license.

If you have any question/bug/suggestion just create a new issue!

Author

Readme

Keywords

none

Package Sidebar

Install

npm i fastexpress

Weekly Downloads

1

Version

2.0.0

License

MIT

Unpacked Size

45.4 kB

Total Files

44

Last publish

Collaborators

  • davidcosta