You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

39 lines
925 B

#!/usr/bin/env node
import express from 'express';
import {create} from 'express-handlebars';
import fs from 'fs-extra';
const app = express();
const hbs = create({
extname: '.hbs', defaultLayout: false,
partialsDir: ['.'],
})
app.engine('.hbs', hbs.engine);
app.set('view engine', '.hbs');
app.set('views', './layouts');
app.get('/', async (req, res) => {
const jsonFileName = (req.query.data) ? req.query.data : 'default';
const data = await fs.readJson(`./data/${jsonFileName}.json`);
res.render('page-container', data);
});
app.use(express.static('src'));
const PORT = 3002;
app.listen(PORT, () => {
console.log(`The web server has started on port ${PORT}`);
});
// TODO:
// Add Gulp for CSS/JS Styling
// Add Browsersync that will refresh the page on changes
// Top Panel with options to switch data (select input)
// Options to resize the page and test Responsiveness (select input)