Skip to main content
EffectBuilder wraps an oRPC builder with Effect-aware methods while preserving the standard oRPC builder surface.

Definition flow

flow.ts
const procedure = eos
  .$context<RequestContext>()
  .provide(AppLive)
  .errors({ UserNotFoundError })
  .input(GetUserInput)
  .output(User)
  .use(authMiddleware)
  .traced("users.get")
  .effect(function* ({ input }) {
    return yield* UsersRepo.findById(input.id);
  });

Method summary

CategoryMethods
Configuration.$config, .$context, .$meta, .$route, .$input
Schemas.input, .output
Errors.errors
Services.provide, .provideOptional
Middleware.use, .middleware
Handlers.handler, .effect
Telemetry.traced
Routers.prefix, .tag, .router, .lazy

Decorated procedures

Calling .effect(...) returns an EffectDecoratedProcedure, which keeps procedure helpers such as:
  • .errors(...)
  • .meta(...)
  • .route(...)
  • .provide(...)
  • .provideOptional(...)
  • .use(...)
  • .callable(...)
  • .actionable(...)

See also

Last modified on June 15, 2026