index.js 752 B

123456789101112131415161718192021222324252627282930
  1. import fs from "node:fs/promises";
  2. import path from "path";
  3. import parseDir from "./parseDir.js";
  4. export default async (express, options = {})=> {
  5. console.time("Build Completed In");
  6. const app = express();
  7. const root = path.join(process.cwd(), "routes");
  8. readFiles(root, root, app);
  9. app.use(express.static(path.join(process.cwd(), ".build")));
  10. console.timeEnd("Build Completed In");
  11. return app;
  12. }
  13. const readFiles = async (dir, root, app)=>{
  14. const files = await fs.readdir(dir, {withFileTypes: true});
  15. for(let i = 0; i < files.length; i++){
  16. let curDir = path.join(dir, files[i].name);
  17. if(files[i].isDirectory()) {
  18. readFiles(curDir, root, app);
  19. }
  20. }
  21. parseDir(dir);
  22. }