Resume/gulpfile.js

44 lines
913 B
JavaScript

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);