Express work

This commit is contained in:
Julien Valverdé
2024-07-03 16:38:36 +02:00
parent 00299615d6
commit 9685f7c37b
2 changed files with 9 additions and 7 deletions

View File

@@ -0,0 +1,6 @@
import { Context, Layer } from "effect"
import express from "express"
export class Express extends Context.Tag("Express")<Express, ReturnType<typeof express>>() {}
export const ExpressLive = Layer.sync(Express, () => express())

View File

@@ -1,12 +1,8 @@
import { Config, Context, Effect, Layer } from "effect"
import express from "express"
import { Config, Effect, Layer } from "effect"
import { Express, ExpressLive } from "./Express"
export class Express extends Context.Tag("Express")<Express, ReturnType<typeof express>>() {}
export const ExpressLive = Layer.sync(Express, () => express())
export const ServerLive = Layer.scopedDiscard(Effect.gen(function*() {
export const HTTPServerLive = Layer.scopedDiscard(Effect.gen(function*() {
const app = yield* Express
const port = yield* Config.number("PORT").pipe(Config.withDefault(8080))