node-dummy-api
v0.9.9
Published
The lightweight alternative to bulky API servers
Downloads
8
Maintainers
Readme
The lightweight alternative to bulky API servers
Are you the kind of developer that doesn't want to rely on a working API in order to perform your development routines ? Look no further then
After a lot of time, I decided to revamp this project and rewrite it completely along the same idea. Stay tuned for updates
Note: The documentation is still in progress thus subject to frequent change.
1.1 Installation
npm install -g node-dummy-api
1.2 Quickstart
node-dummy-api
2.1 Usage example
Create a file called .dummyapi anywhere on your hard drive (preferrably in the same root directory)
Start a console window located in the same directory
As the package prefers to be globally installed, run the package as a command
node-dummy-api
2.2 Configuration file
{
server: {
host: string (default: "localhost")
port: number (default: 1337)
prefix: string (default: "/api")
loglevel: string (default: "trace")
authentication: {
enabled: boolean (default: false)
token: string
}
security: {
enabled: boolean (default: false)
cert: string -> https certificate path
key: string -> https signing key path
}
}
api: {
routesPath: string -> if the file specified at this path exists, then the routes will be loaded from this location
routes: [{
path: string (example: "/users")
model: {
"some-key": "<valid-mocking-key>",
"some-array-key": ["<valid-mocking-key>"],
"some-array-key-two": ["<valid-mocking-key>", <size>],
"some-object-key": {
"key": "<valid-mocking-key>"
}
}
}]
}
}
2.3 API Route configuration
path: any string value that fits your needs (preceeded by /)
model: a JSON object, reflecting the structure of your needed API call
You can use any valid faker random data key in order to generate a property
You can generate arrays of random objects
You can use nested objects and arrays
2.4 Available random data keys
For generating random data, the program uses faker.js. Please refer to the library README file for a complete list of options. Don't forget to write the value in handlebars-style format {{x.y.z}}.