Deriving a Type-Safe Client from `HttpRouter` in Effect Typescript

Is it possible to derive a type-safe client from
HttpRouter
?

Hey folks, I have this code inside a Next.js Route Handler:

import { HttpApp, HttpRouter, HttpServerResponse } from "@effect/platform";

const router = HttpRouter.empty.pipe(
  HttpRouter.get(
    "/users",
    HttpServerResponse.json({ users: [{ id: 1, name: "Alice" }, { id: 2, name: "Bob" }] })
  )
);

const handler = HttpApp.toWebHandler(router);

export const GET = handler;


How can I derive a type-safe client from this code? I don't want to use
HttpApi
module ecosystem as its verbose. I prefer the conciseness of
HttpRouter
.
Was this page helpful?