import { HttpServer } from '@effect/platform'
import { NodeContext, NodeHttpServer } from '@effect/platform-node'
import { Layer } from 'effect'
import { createServer } from 'node:http'
import { runMain } from '@effect/platform-node/NodeRuntime'
const app = HttpServer.router.empty.pipe(
HttpServer.router.get('/', HttpServer.response.json({ message: 'Hello World!!' })),
)
const live = Layer.mergeAll(
NodeContext.layer,
NodeHttpServer.etag.layer,
NodeHttpServer.server.layerServer(createServer, { port: 3000 })
)
const HttpLive = HttpServer.server
.serve(app)
.pipe(Layer.provide(live))
runMain(Layer.launch(HttpLive))
import { HttpServer } from '@effect/platform'
import { NodeContext, NodeHttpServer } from '@effect/platform-node'
import { Layer } from 'effect'
import { createServer } from 'node:http'
import { runMain } from '@effect/platform-node/NodeRuntime'
const app = HttpServer.router.empty.pipe(
HttpServer.router.get('/', HttpServer.response.json({ message: 'Hello World!!' })),
)
const live = Layer.mergeAll(
NodeContext.layer,
NodeHttpServer.etag.layer,
NodeHttpServer.server.layerServer(createServer, { port: 3000 })
)
const HttpLive = HttpServer.server
.serve(app)
.pipe(Layer.provide(live))
runMain(Layer.launch(HttpLive))