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.
npm install node-package-configurator
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
});
const npc = require('node-package-configurator');
npc.getConfig({
modules: ["my-module"],
project: "my-project"
});
Name | Type | Default | Description |
---|---|---|---|
module | array | List of module names, in order of priority. | |
logo | string | URL to your project logo (optional) | |
project | string | Name of the project | |
jsonSchema | object | JSON Schema to use in the form |
Name | Type | Returns | Description |
---|---|---|---|
init | function | Initializes the HTML form | |
getConfig | function | object | Returns the configuration object of the given project |
getProjects | function | array | Returns an array of available project names |
getFile | function | object | Returns a file for your npm module from the file system (AppData for Windows, root otherwise) |
setFile | function | object | Writes a file for your npm module in the file system (AppData for Windows, root otherwise) |
MIT © Vincent Morneau