Skip to content

Conversion library for transforming Mongoose schema objects into Swagger schema definitions.

License

Notifications You must be signed in to change notification settings

jylauril/mongoose-to-swagger

 
 

Repository files navigation

NPM version Build Status Coverage Status

mongoose-to-swagger

Conversion library for transforming Mongoose schema objects into Swagger schema definitions.

Installation

$ npm install --save mongoose-to-swagger

Overview

Converts a mongoose model into a swagger schema.

Usage

const mongoose = require('mongoose');
const m2s = require('mongoose-to-swagger');
const Cat = mongoose.model('Cat', { name: String });
const swaggerSchema = m2s(Cat);
console.log(swaggerSchema);

Meta properties

By default, description, enum, and required fields are extracted from the mongoose schema definitions and placed into the correspoding swagger properties definitions. Additional meta props can be whitelisted using the props array on the options argument.

const Cat = mongoose.model('Cat', { 
    name: String,
    /**
     * Custom field
     */
    bar: 'baz',
});

const options = { 
    /**
     * Whitelist of custom fields.
     */
    props: ['bar'], 
};

const swaggerSchema = m2s(Cat, options);

Contributing

We look forward to seeing your contributions!

License

MIT © Ben Lugavere

About

Conversion library for transforming Mongoose schema objects into Swagger schema definitions.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 97.0%
  • JavaScript 3.0%