smartmocker
v1.0.0
Published
OpenAPI 3.x/Swagger 2 mock server generator for Node.js
Downloads
3
Readme
- ES7 compliant
- ESLint
- YAML/JSON config file
- Express
- No transpiling
Install
Use it from the CLI:
npm install -g smartmocker
Requirements
- Node.js v7.6+
Usage
Usage: smartmocker [options]
Options:
-c, --config json config file (required)
-V, --version output the version number
-h, --help output usage information
Example
smartmocker -c config.json
Sample configuration file can be found down below
{
"projectName": "myAwesomeProject",
"projectDescription": "Awesome project",
"projectVersion": "1.0.0",
"outputDir": "myAwesomeProject",
"endpoints": [{
"apiEndpoint": "user",
"swaggerFile": "user.oas3.json"
}, {
"apiEndpoint": "profile",
"swaggerFile": "profile.oas3.json"
}]
}
Following fields are required
- projectName
- Name of your project to be located in package.json of generated project
- projectDescription
- Description of your project to be located in package.json of generated project
- projectVersion
- Version of your project to be located in package.json of generated project
- outputDir
- Directory to place your newly generated project
- endpoints
- Multiple OpenAPI configuration files can be provided as swaggerFile parameter
- Route your endpoints to different locations to be defined as apiEndpoint parameter
What will output be like?
After the above example runs, brand new Node.js app will be created
Folder structure will be similar to this
Under the root, there are separate apps created for each endpoint
In this case there are two express apps created for
- user
- profile
Each app is exported and combined into one
Run
After the generation completes, run the following commands in order
cd myAwesomeProject
npm i
npm run start
Go to localhost:8080
Test some of your API's by navigating to
localhost:8080/user/${ENDPOINT}
orlocalhost:8080/profile/${ENDPOINT}
Enjoy 🥳