26 lines
758 B
JavaScript
26 lines
758 B
JavaScript
// based on the minimal demo from https://www.npmjs.com/package/serve
|
|
import handler from 'serve-handler';
|
|
import http from 'http';
|
|
import 'dotenv/config';
|
|
import { ENV } from './lib/env.js';
|
|
|
|
const isDebugEnabled = ENV.getBoolean('VS_DEBUG');
|
|
const hasOverrideDirectory = ENV.getIsSet('VS_OUTPUT_DIR');
|
|
const overrideDirectory = ENV.getString('VS_OUTPUT_DIR');
|
|
const defaultDirectory = 'build';
|
|
|
|
const options = {
|
|
public: hasOverrideDirectory ? overrideDirectory : defaultDirectory,
|
|
directoryListing: isDebugEnabled,
|
|
};
|
|
|
|
const server = http.createServer((req, res) => {
|
|
return handler(req, res, options);
|
|
});
|
|
|
|
server.listen(3000, () => {
|
|
console.log('Running on port 3000');
|
|
if(isDebugEnabled) {
|
|
console.log(options);
|
|
}
|
|
}); |