# Core API Installation
# Folder & Main Class creation
- Pick a name for your module (lower_case)
- Go to
/modulesand create a folder with the name of your module - Create a Js file
main.jsinside the new folder/modules/module_example/main.js - Create your Module class by extending the
ModuleBaseclass
const ModuleBase = require("../ModuleBase");
class Module_example extends ModuleBase {
async moduleIsEnabled(req, res) {
if (req.settings.module_example) {
return req.settings.module_example.value.enabled;
}
return true;
};
constructor(req, res) {
super(req, res);
}
cartTypes = [
"CUSTOM_ITEM_TYPE",
];
static loadModels(models) {
// models["Product"] = require("./models/Product");
}
static loadControllers(controllers) {
// controllers["ProductsController"] = require("./controllers/ProductsController");
}
static loadExcludedApiRoutesFromAuth(routes) {
// routes.push("/api/all_products");
}
static loadApiRoutes(routes) {
// routes.push({ resource: ["product", "products"], model: "Product", middlewares: [isCoreAPIPermitted], controller: "ProductsController" });
}
static loadWebRoutes(routes) {
// routes.push({ method: "get", route: "/product/:productId", function: async(req, res) => {} });
}
}
module.exports = Module_example;
# Importing the Module
Example of loading the module_example Module in /modules/modules.json:
[
{
"name": "module_example",
"description": "Examples management"
}
]