const fastify = require('fastify')();//{ logger: true }); const path = require('path'); const crypto = require('crypto'); const csass = require("./compile_sass").compileSassMain(); const static_opts = { root: path.join(__dirname, 'public'), prefix: '/public/', }; fastify.register(require('fastify-static'), static_opts); fastify.register(require('fastify-leveldb'), { name: 'db' }, err => { if (err) throw err }); fastify.get('/', (req, reply) => { reply.view('/template/home.html'); }); fastify.get('/dbg', (req, reply) => { reply.view('/template/templates.html'); }); fastify.get('/:id', (req, reply) => { try{ const ec = parseInt(req.params.id); switch(ec){ case 400: case 401: case 402: case 403: case 404: case 405: reply.code(ec).send("Client Error"); break; case 500: reply.code(ec).send("Internal Error"); break; default: throw undefined; } }catch(e){ reply.view('/template/journey.html'); } }); fastify.register(require('./router/api'), { prefix: '/api' }); fastify.listen(8080,'0.0.0.0' ,(err,address) => { if (err) throw err; console.log("Listening on", address); });