Files
website/packages/server/src/entrypoint.node.ts
Julien Valverdé c0cac90a66
All checks were successful
Build / build (push) Successful in 41s
Lint / lint (push) Successful in 13s
Initial version (#1)
Co-authored-by: Julien Valverdé <julien.valverde@mailo.com>
Reviewed-on: #1
2025-09-18 01:26:10 +02:00

19 lines
561 B
TypeScript

import { NodeContext, NodeHttpServer, NodeRuntime } from "@effect/platform-node"
import { Effect, Layer } from "effect"
import { createServer } from "node:http"
import { ServerConfig } from "./config"
import { Server } from "./server"
Layer.launch(Server).pipe(
Effect.provide(Layer.empty.pipe(
Layer.provideMerge(ServerConfig.httpPort.pipe(
Effect.map(port => NodeHttpServer.layer(createServer, { port })),
Layer.unwrapEffect,
)),
Layer.provideMerge(NodeContext.layer),
)),
NodeRuntime.runMain,
)