Skip to content

francescobarbera/convexpress

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

npm build coverage dependencies devDependencies

convexpress

Employ conventions to register express routes.

convroute properties

  • path
  • method
  • handler
  • paramters (optional)
  • middleware (optional)
  • description (optional)
  • tags (optional)
  • responses (optional)

Install

$ npm install convexpress

Use

Rouotes implementation

import convexpress from 'convexpress';

const options = {
    info: {
        title: 'myService',
        version: '1.0.0'
    },
    host: 'localhost:3000'
};
const api = convexpress(options)
    .serveSwagger() //automatically generate swagger.json
    .convroute(require('./resourceA/get'))
    .convroute(require('./resourceA/post'))

const server = express()
    .use(cors(corsOptions))
    .use(bodyParser.json({limit: '6mb'}))
    .use(bodyParser.urlencoded({limit: '6mb', extended: true}))
    .use(api);

Api implementation

####get.js

export const path = '/resourceA';
export const method = 'get';
export const description = 'List resourceA';
export const tags = ['resourceA'];
export const responses = {
    '200': {
        description: 'resourceA list'
    }
};
export const parameters = [
    {
        name: 'id',
        in: 'query',
        required: false,
        type: 'string'
    }
];
export function handler (req, res) {
    // request handler, return all that client needs
}

About

Employ conventions to register express routes

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%