UNPKG

nova-frontend

Version:

Nova is an alternative to all those gigantic front-end frameworks, that often do more than is necessary when it comes to building simple UIs. Pure Vanilla Javascript is performance-wise the best way to build your front-end in a SPA, but it can be hard to

29 lines (24 loc) 871 B
const fs = require('fs/promises'); const path = require('path'); const nova = require('./nova'); const { minify } = require('terser'); const packageinfo = require('./package.json'); (async function buildNova() { try { const dir = await fs.readdir(__dirname); const oldfile = dir.find(file => /nova\d/.test(file)); await fs.unlink(path.join(__dirname, oldfile)); let buildString = "const root = document.getElementById('root')"; for (const module in nova) { if (/static/gi.test(module)) continue; const stringifiedModule = nova[module].toString(); buildString += '\n'; buildString += stringifiedModule; } const minifiedBuild = await minify(buildString) await fs.writeFile(`nova${packageinfo.version}.min.js`, minifiedBuild.code); } catch (e) { console.error(`BUILD ERROR: ${e.message}`) } })()