const fs = require("node:fs") const path = require("node:path") const logger = require("./modules/logger") const config = require("./config.json") const express = require("express") const dbController = require("./controllers/db") const app = express() app.use(express.json()) app.use(express.urlencoded({ extended: true })) app.set("view engine", "ejs") app.set("views", path.join(__dirname, "static", "views")) dbController.initDB() const routes = fs.readdirSync(path.join(__dirname, "routes"), { recursive: true }) for (let route of routes) { if (route.endsWith(".js")) { if (route.endsWith("index.js")) { route = "/" + route.replace("index.js", "/").replace(/\\/g, "/").replace(/\/\//g, "") } else { route = "/" + route.replace(".js", "").replace(/\\/g, "/") } const routeHandler = require(`./routes/${route}`) app.use(route, routeHandler) logger.log(`Route ${route.cyan.bold} registered`) } } app.listen(config.web.port, () => { logger.log(`Server listening at port : ${config.web.port}`) })