This repository has been archived on 2023-08-24. You can view files and clone it, but cannot push or open issues or pull requests.
OwlBoard/app.js

37 lines
1.2 KiB
JavaScript
Raw Normal View History

2022-11-30 22:08:27 +00:00
// OwlBoard - © Fred Boniface 2022 - Licensed under GPLv3 (or later)
// Please see the included LICENSE file statically served fonts are
// licensed separately, each folder contains a license file
2022-11-30 00:21:59 +00:00
2022-11-30 22:08:27 +00:00
// Load & prepare modules:
2022-11-30 14:32:36 +00:00
const express = require('express');
const app = express();
2022-12-01 13:40:24 +00:00
const config = require('./src/configs/server.configs');
const version = require('./src/configs/version.configs');
const testRtr = require('./src/routes/test.routes');
const listRtr = require('./src/routes/list.routes');
2022-11-30 00:21:59 +00:00
2022-12-01 13:40:24 +00:00
// Print version number:
console.log(`Starting OwlBoard, API version ${version.api}`);
2022-11-30 00:21:59 +00:00
2022-12-01 13:40:24 +00:00
// Middleware:
2022-11-30 14:32:36 +00:00
app.use(express.json()); //JSON Parsing for POST Requests
app.use(express.static('static')); //Serve static content from static
2022-12-01 13:40:24 +00:00
app.use((err, req, res, next) => {
const statusCode = err.statuscode || 500;
console.error(err.message, err.stack);
res.status(statusCode).json({'message': err.message});
2022-11-30 00:21:59 +00:00
});
2022-12-01 13:40:24 +00:00
// Point to Routes
app.use('/api/test', testRtr);
app.use('/api/list', listRtr);
2022-11-30 00:21:59 +00:00
2022-12-01 13:40:24 +00:00
// Start server
app.listen(config.port, config.listen, (error) =>{
if(!error) {
console.log(`Started server on http://${config.listen}:${config.port}`);
} else {
console.log("Error occurred, server can't start", error);
}
});