index.js 839 B

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