Generic website page generation

This commit is contained in:
Rodrigo Fernandes 2016-10-09 16:56:58 +01:00
parent 1e22a3ec8f
commit 744025efe2
No known key found for this signature in database
GPG key ID: 08E3C5F38969078E
6 changed files with 17 additions and 14 deletions

View file

@ -2,25 +2,28 @@ var fs = require('fs');
var hogan = require('hogan.js'); var hogan = require('hogan.js');
var template = hogan.compile(readFile('website/templates/template.mustache')); var root = 'website/templates';
var pagesRoot = root + '/pages';
var index = readFile('website/templates/index.partial.html'); var websitePages = fs.readdirSync(root + '/pages');
var indexScripts = readFile('website/templates/index-scripts.partial.html');
var demo = readFile('website/templates/demo.partial.html'); var template = hogan.compile(readFile(root + '/template.mustache'));
var demoAssets = readFile('website/templates/demo-assets.partial.html');
var demoScripts = readFile('website/templates/demo-scripts.partial.html');
var indexHtml = template.render({assets: '', scripts: indexScripts, content: index}); websitePages.map(function(page) {
var pagePartial = readFile(pagesRoot + '/' + page + '/' + page + '.partial.html');
writeFile('docs/index.html', indexHtml); var pageAssets = readFile(pagesRoot + '/' + page + '/' + page + '-assets.partial.html');
var pageScripts = readFile(pagesRoot + '/' + page + '/' + page + '-scripts.partial.html');
var demoHtml = template.render({assets: demoAssets, scripts: demoScripts, content: demo}); var pageHtml = template.render({assets: pageAssets, scripts: pageScripts, content: pagePartial});
writeFile('docs/' + page + '.html', pageHtml);
writeFile('docs/demo.html', demoHtml); });
function readFile(filePath) { function readFile(filePath) {
try {
return fs.readFileSync(filePath, 'utf8'); return fs.readFileSync(filePath, 'utf8');
} catch (_ignore) {
}
return '';
} }
function writeFile(filePath, content) { function writeFile(filePath, content) {