build-effect-ts-v3

Installation
SKILL.md

Build Effect-TS v3

Build production-grade TypeScript applications with Effect-TS v3. Effect<A, E, R> is a lazy, typed, immutable description of work; services and layers carry dependencies; Schema validates boundaries; fibers run structured concurrency; Stream carries pull-based async data. Ecosystem: @effect/platform, @effect/sql (+ 11 driver packages), @effect/rpc, @effect/cli, @effect/vitest, @effect/opentelemetry, plus @effect-atom/atom-react for React.

For the structured index of every reference file, read references/00-reference-map.md.

When to use

  • Building, refactoring, debugging, or testing Effect-TS v3 code (effect@3.x)
  • Implementing typed tagged errors, services and layers, fibers, streams, caching, scheduling, observability with the effect package
  • Working with import { Effect, Layer, Schema, Stream } from "effect", Effect.gen(function*() { yield* … }), class X extends Effect.Service<X>()(...), class E extends Schema.TaggedError<E>("Tag")(...), Layer.provideMerge, Effect.fn("Service.method")
  • Building HTTP servers/clients with @effect/platform, CLIs with @effect/cli, RPC with @effect/rpc, SQL with @effect/sql, tests with @effect/vitest, OTel with @effect/opentelemetry
  • Building React frontends with @effect-atom/atom-react
  • Migrating Promise / fp-ts / neverthrow / RxJS code to Effect, or operating in gradual-adoption / portable-utility mode

Do NOT use this skill for:

  • Effect-TS v4 / v4 beta — strictly v3 only; v4 syntax (ServiceMap.Service, Schema.TaggedErrorClass, bare Effect.catch, Effect.forkChild, Effect.forkDetach, Schema.makeUnsafe, Result module) is forbidden, see references/anti-patterns/19-v4-syntax-do-not-use.md
  • fp-ts, neverthrow, or RxJS codebases that do not plan to adopt Effect — only the migration/ docs apply
Related skills
Installs
6
GitHub Stars
6
First Seen
7 days ago