← ClaudeAtlas

typescript-effect-tslisted

Type-safe functional effects with Effect-TS. Use when building applications with Effect, using Effect.gen generators, handling typed errors, managing services with Layer and Context.Tag, validating data with Schema, or managing resources with acquireRelease.
martinffx/atelier · ★ 28 · AI & Automation · score 83
Install: claude install-skill martinffx/atelier
# Effect-TS Effect is a powerful TypeScript library for building robust, type-safe applications. It provides a functional effect system with typed errors, dependency injection, resource management, and concurrency primitives. ## Why Effect? **Type-safe errors**: Unlike Promise which loses error type information, Effect tracks errors in the type system with `Effect<Success, Error, Requirements>`. **Dependency injection**: Services are declared explicitly using `Context.Tag` and provided via `Layer`, making dependencies visible in types. **Resource safety**: `Effect.acquireRelease` ensures resources are always cleaned up, even on failure or interruption. **Composability**: Effects compose naturally with `pipe`, `Effect.gen` generators, and combinators like `Effect.all`, `Effect.flatMap`. ## Quick Reference For detailed patterns and examples, see: - [Core Concepts](./references/core.md) - Effect type, creating and running effects, generators - [Error Handling](./references/error-handling.md) - Typed errors, catchAll, catchTag, Either - [Services & Layers](./references/services.md) - Dependency injection with Context.Tag and Layer - [Schema](./references/schema.md) - Data validation with encode/decode - [Resources](./references/resources.md) - Resource management with acquireRelease and Scope ## The Effect Type The core type `Effect<Success, Error, Requirements>` represents a computation that: - Produces a value of type `Success` on success - May fail with an error of t