{ "//": "Example of configuration for metrics web instance", "//": "====================================================================", "token": "MY GITHUB API TOKEN", "//": "GitHub Personal Token (required)", "restricted": [], "//": "Authorized users (empty to disable)", "maxusers": 0, "//": "Maximum users, (0 to disable)", "cached": 3600000, "//": "Cache time rendered metrics (0 to disable)", "ratelimiter": null, "//": "Rate limiter (see express-rate-limit documentation)", "port": 3000, "//": "Listening port", "optimize": true, "//": "SVG optimization", "debug": false, "//": "Debug logs", "debug.headless": false, "//": "Debug puppeteer process", "mocked": false, "//": "Use mocked data instead of live APIs (use 'force' to use mocked token even if real token are defined)", "repositories": 100, "//": "Number of repositories to use", "padding": ["0", "8 + 11%"], "//": "Image padding (default)", "hosted": { "by": "", "//": "Web instance host (displayed in footer)", "link": "", "//": "Web instance host link (displayed in footer)" }, "community": { "templates": [], "//": "Additional community templates to setup" }, "templates": { "default": "classic", "//": "Default template", "enabled": [], "//": "Enabled templates (empty to enable all)" }, "extras": { "default": false, "//": "Default extras state (advised to let 'false' unless in debug mode)", "css": false, "//": "Allow use of 'extras.css' option", "features": false, "//": "Enable extra features (advised to let 'false' on web instances)" }, "plugins.default": false, "//": "Default plugin state (advised to let 'false' unless in debug mode)", "plugins": { "//": "Global plugin configuration", <% for (const name of Object.keys(plugins).filter(v => !["base", "core"].includes(v))) { -%> "<%= name %>":{ <%- JSON.stringify(Object.fromEntries(Object.entries(plugins[name].inputs).filter(([key, {type}]) => type === "token").map(([key, {description:value}]) => [key.replace(new RegExp(`^plugin_${name}_`), ""), value])), null, 6).replace(/^[{]/gm, "").replace(/^\s*[}]$/gm, "").replace(/": "/gm, `${'": null,'.padEnd(22)} "//":"`).replace(/"$/gm, '",').trimStart().replace(/\n$/gm, "\n ") %>"enabled": false, "//": "<%= plugins[name].inputs[`plugin_${name}`].description %>" }, <% } %>"//": "" } }