1.4.0 • Published 5 years ago

node-package-configurator v1.4.0

Weekly downloads
3
License
MIT
Repository
github
Last release
5 years ago

Node Package Configurator

npm Build Status Dependency Status XO code style

demo

Node Package Configurator (npc) generates a dynamic web form out of a JSON schema. The user fills the forms, npc resolves the JSON schema into a JSON object, and saves the result locally for persistent storage.

On Windows, npc saves the config file in the user App Data. Example: C:\users\vmorneau\App Data\yourModuleName
On MacOS, npc saves the file in the library preference folder. Example: ~/Library/Preferences/yourModuleName
On Linux, npc saves the file in the root folder. Example: ~/yourModuleName

You can retrieve this file (your project configuration) at any time.

Install

npm install node-package-configurator

Usage

Launch the form

const npc = require('node-package-configurator');
const schema = require('path_to_your_json_schema');

npc.init({
    modules: ["my-module"],
    logo: "url",
    project: "my-project",
    jsonSchema: schema
});

Getting the config

const npc = require('node-package-configurator');

npc.getConfig({
    modules: ["my-module"],
    project: "my-project"
});

Options

NameTypeDefaultDescription
modulearrayList of module names, in order of priority.
logostringURL to your project logo (optional)
projectstringName of the project
jsonSchemaobjectJSON Schema to use in the form

Methods

NameTypeReturnsDescription
initfunctionInitializes the HTML form
getConfigfunctionobjectReturns the configuration object of the given project
getProjectsfunctionarrayReturns an array of available project names
getFilefunctionobjectReturns a file for your npm module from the file system (AppData for Windows, root otherwise)
setFilefunctionobjectWrites a file for your npm module in the file system (AppData for Windows, root otherwise)

Changelog

See changelog.

Special thanks to

Brutusin json-forms

License

MIT © Vincent Morneau