const { src, dest, watch, series } = require("gulp"); const bs = require("browser-sync").create(); const fs = require("fs"); const path = require("path"); const index = require("./index"); const resumePath = path.join(__dirname, "resume.json"); function setup(cb){ let dir = path.join(__dirname, 'dev'); if (!fs.existsSync(dir)){ fs.mkdirSync(dir); } cb(); } function css(cb) { cb(); } function html(cb) { const resume = JSON.parse(fs.readFileSync("./resume.json", "utf-8")); fs.writeFileSync(path.join(__dirname, 'dev/template.html'), index.render(resume)); cb(); } function serve() { bs.init({ server: { baseDir: "./dev", index: "template.html", }, ui: false, open: false, }); watch(['./theme/**/*.html', './resume.json'], html) bs.watch("./dev/*.html").on("change", bs.reload); } exports.default = series(setup, css, html, serve);