webserver-framework/index.ts
2024-01-17 18:08:04 +02:00

20 lines
820 B
TypeScript

import { readFileSync } from 'node:fs';
import path from 'node:path';
import process from 'node:process';
const options = JSON.parse(readFileSync('./options.json', { encoding: 'utf-8' }));
const segments = path.resolve(process.argv[0]).split(path.sep);
process.env.JS_RUNTIME = segments[segments.length - 1].replace('.exe', '');
const fileSegments = path.resolve(process.argv[1]).split(path.sep);
const resolved = fileSegments.slice(0, fileSegments.length - 1).join(path.sep);
const srcDir = path.join(resolved, 'src');
const controllerDir = path.join(srcDir, 'controller');
options.srcDir = srcDir;
import { Controller } from './src/controller/index.js';
import dotenv from 'dotenv';
const env = dotenv.config().parsed ?? {};
const controller = new Controller(controllerDir, { ...options, env });
controller.init();