c620c4681ddc5d73fe051ffb5846ca3bbec8b1a9
[e-mobility-charging-stations-simulator.git] / ui / web / start.js
1 import { createServer } from 'node:http'
2 import { dirname, join } from 'node:path'
3 import { env } from 'node:process'
4 import { fileURLToPath } from 'node:url'
5 import finalhandler from 'finalhandler'
6 import serveStatic from 'serve-static'
7
8 const isCFEnvironment = env.VCAP_APPLICATION != null
9 const PORT = isCFEnvironment ? parseInt(env.PORT) : 3030
10 const uiPath = join(dirname(fileURLToPath(import.meta.url)), './dist')
11
12 const serve = serveStatic(uiPath)
13
14 const server = createServer(function onRequest(req, res) {
15 serve(req, res, finalhandler(req, res))
16 })
17
18 server.listen(PORT, () => console.info(`Web UI running at: http://localhost:${PORT}`))