# effect-ts/core

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/effect-ts-core).**

14,618 stars · 593 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/Effect-TS/core
- Homepage: https://effect.website
- awesome-repositories: https://awesome-repositories.com/repository/effect-ts-core.md

## Description

This project is a functional programming library and toolkit for building production TypeScript applications. It provides a system for managing concurrency, error handling, and resource lifecycles using functional effects.

The project distinguishes itself through a comprehensive suite of specialized toolkits, including a dependency injection framework for decoupling service implementations, a workflow orchestrator for coordinating durable processes, and a SQL database toolkit for consistent data operations across multiple dialects. It also implements an OpenTelemetry instrumentation library for collecting and exporting application telemetry.

The core architecture covers algebraic effect handling, fiber-based concurrency, and monadic error tracking. It further includes capabilities for schema-driven data validation and platform runtime abstraction to interact with environment APIs across different server and browser runtimes.

The toolkit also supports the construction of structured command line interfaces and the orchestration of distributed compute tasks across multiple worker nodes.

## Tags

### Programming Languages & Runtimes

- [Functional Programming Frameworks](https://awesome-repositories.com/f/programming-languages-runtimes/functional-programming-frameworks.md) — Provides a comprehensive toolkit for building production TypeScript applications centered on type safety and managed side effects.
- [Asynchronous Processing](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/asynchronous-processing/asynchronous-processing.md) — Handles concurrent processes and failure states using a functional approach to maintain predictable runtime behavior. ([source](https://github.com/effect-ts/core#readme))
- [Fiber-Based Schedulers](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/concurrency/synchronization-primitives/channel-based-concurrency/fiber-based-schedulers.md) — Manages lightweight asynchronous execution threads using a cooperative scheduling model for high-volume concurrency.

### DevOps & Infrastructure

- [Durable Task Orchestrators](https://awesome-repositories.com/f/devops-infrastructure/automation-orchestration/task-execution-frameworks/workflow-engines/durable-task-orchestrators.md) — Provides an orchestration substrate for coordinating complex asynchronous tasks with built-in state persistence and recovery.
- [Distributed Computing Frameworks](https://awesome-repositories.com/f/devops-infrastructure/distributed-computing-frameworks.md) — Spreads heavy workloads across multiple worker nodes to process data in parallel. ([source](https://effect-ts.github.io/effect/))
- [Distributed Task Orchestration](https://awesome-repositories.com/f/devops-infrastructure/distributed-task-orchestration.md) — Coordinates tasks across multiple nodes or clusters to scale processing power for demanding workloads. ([source](https://github.com/effect-ts/core#readme))
- [Workflow Orchestration](https://awesome-repositories.com/f/devops-infrastructure/workflow-orchestration.md) — Manages asynchronous tasks and resource dependencies to ensure reliable execution and recovery in distributed systems.

### Software Engineering & Architecture

- [Dependency Injection Frameworks](https://awesome-repositories.com/f/software-engineering-architecture/dependency-injection-frameworks.md) — Implements a dependency injection framework to decouple service implementations from their usage for better testability.
- [Durable Workflow Engines](https://awesome-repositories.com/f/software-engineering-architecture/durable-workflow-engines.md) — Implements a framework for building long-running, fault-tolerant processes that persist state across infrastructure failures. ([source](https://github.com/effect-ts/core#readme))
- [Monadic Error Handling](https://awesome-repositories.com/f/software-engineering-architecture/error-handling-strategies/monadic-error-handling.md) — Tracks failure types in the type system using functional wrappers to force explicit error handling.
- [Functional Programming](https://awesome-repositories.com/f/software-engineering-architecture/functional-programming.md) — Provides functional programming primitives and patterns to manage concurrency, error handling, and resource lifecycles.
- [Dependency Injection](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/dependency-injection.md) — Resolves service requirements by constructing a directed graph of environment providers injected at runtime.
- [Resource Lifecycle Managers](https://awesome-repositories.com/f/software-engineering-architecture/rpc-cancellation/asynchronous-operation-cancellation/context-aware-cancellation/resource-lifecycle-managers.md) — Tracks the lifecycle of external resources to ensure proper acquisition and release across asynchronous boundaries.
- [Side Effect Handlers](https://awesome-repositories.com/f/software-engineering-architecture/side-effect-handlers.md) — Decouples side effect definitions from their implementations by deferring resolution to dedicated handlers.
- [Cross-Platform Runtimes](https://awesome-repositories.com/f/software-engineering-architecture/cross-platform-runtimes.md) — Provides a single set of tools to interact with environment APIs across different server and browser runtimes. ([source](https://effect-ts.github.io/effect/))
- [Data Validation Schemas](https://awesome-repositories.com/f/software-engineering-architecture/data-validation-schemas.md) — Validates runtime data shapes by transforming raw input into typed objects via declarative specifications.
- [Workflow Execution Managers](https://awesome-repositories.com/f/software-engineering-architecture/system-internals/centralization-patterns/workflow-execution-managers.md) — Manages asynchronous tasks and resource dependencies through a coordinated system to ensure reliable execution. ([source](https://effect-ts.github.io/effect/))

### Data & Databases

- [Asynchronous SQL Toolkits](https://awesome-repositories.com/f/data-databases/sql-database-connectors/asynchronous-sql-toolkits.md) — Offers a type-safe SQL toolkit for executing data operations consistently across multiple database dialects.

### System Administration & Monitoring

- [Instrumentation Libraries](https://awesome-repositories.com/f/system-administration-monitoring/instrumentation-libraries.md) — Ships a library for adding custom tracking and tracing to application code using open observability standards.
- [Monitoring and Observability](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability.md) — Implements tools for collecting and exporting telemetry to monitor system health and performance. ([source](https://github.com/effect-ts/core#readme))
- [OpenTelemetry Exporters](https://awesome-repositories.com/f/system-administration-monitoring/opentelemetry-exporters.md) — Provides components for exporting telemetry data in compliance with OpenTelemetry standards. ([source](https://effect-ts.github.io/effect/))

### Part of an Awesome List

- [Functional Utility Libraries](https://awesome-repositories.com/f/awesome-lists/devtools/functional-utility-libraries.md) — Fully-fledged functional effect system for TypeScript.
