summary refs log tree commit diff
path: root/bundle/src/Server.ts
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-13 13:03:18 +0200
committerFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-13 13:03:18 +0200
commita687b489d745c52e207637b6595edcb3eabe8f2d (patch)
tree98d45b035c2c9589d9702a9a2f442b62f9a3ab99 /bundle/src/Server.ts
parentFix naming (diff)
parentabstract Event emission (diff)
downloadserver-a687b489d745c52e207637b6595edcb3eabe8f2d.tar.xz
Merge branch 'master' into pr/darkhpp/261-2
Diffstat (limited to 'bundle/src/Server.ts')
-rw-r--r--bundle/src/Server.ts33
1 files changed, 33 insertions, 0 deletions
diff --git a/bundle/src/Server.ts b/bundle/src/Server.ts
new file mode 100644

index 00000000..14abc128 --- /dev/null +++ b/bundle/src/Server.ts
@@ -0,0 +1,33 @@ +process.on("unhandledRejection", console.error); +process.on("uncaughtException", console.error); + +import http from "http"; +import { FosscordServer as APIServer } from "@fosscord/api"; +import { Server as GatewayServer } from "@fosscord/gateway"; +import { CDNServer } from "@fosscord/cdn/"; +import express from "express"; +import { Config } from "../../util/dist"; + +const app = express(); +const server = http.createServer(); +const port = Number(process.env.PORT) || 8080; +const production = true; +server.on("request", app); + +// @ts-ignore +const api = new APIServer({ server, port, production, app }); +// @ts-ignore +const cdn = new CDNServer({ server, port, production, app }); +// @ts-ignore +const gateway = new GatewayServer({ server, port, production }); + +async function main() { + await api.start(); + await cdn.start(); + await gateway.start(); + + if (!Config.get().gateway.endpoint) await Config.set({ gateway: { endpoint: `ws://localhost:${port}` } }); + if (!Config.get().cdn.endpoint) await Config.set({ cdn: { endpoint: `http://localhost:${port}` } }); +} + +main().catch(console.error);