mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig.space.git
synced 2025-12-13 16:26:50 +00:00
24 lines
887 B
JavaScript
24 lines
887 B
JavaScript
const pug = require('pug')
|
|
const { mkdirSync, writeFileSync } = require('fs')
|
|
const { dirname, resolve } = require('path')
|
|
|
|
const config = require('../pug.config')
|
|
const site = require('../generated/site-data.json')
|
|
const episodes = require('../generated/episodes.json')
|
|
const team = require('../content/team.json')
|
|
|
|
const renderPage = (name, out, data = {}) => {
|
|
const file = resolve(__dirname, '..', `src/${name}.pug`)
|
|
const options = Object.assign({}, config, { site }, data)
|
|
const rendered = pug.renderFile(file, options)
|
|
const dst = resolve(__dirname, '..', 'dist', `${out}.html`)
|
|
const dir = dirname(dst)
|
|
|
|
mkdirSync(dir, { recursive: true })
|
|
writeFileSync(dst, rendered)
|
|
}
|
|
|
|
renderPage('index', 'index', { navCurrent: 'index' })
|
|
renderPage('team', 'team/index', { navCurrent: 'team', team })
|
|
renderPage('podcast', 'podcast/index', { navCurrent: 'podcast', episodes })
|