effect-ts/effect

Build production-ready applications in TypeScript

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 48 minutes ago
Added to GitGenius on September 3rd, 2026
Created on November 13th, 2019
Open Issues & Pull Requests: 242 (+0)
GitHub issues: Enabled
Number of forks: 726
Total Stargazers: 15,892 (+0)
Total Subscribers: 39 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 12.7 hours
Mean response time: 77.7 days
90th percentile: 301.5 days
Tracked items: 1,192

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 99% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "schema" is answered fastest, typically in about an hour, while "3.0" waits about 2 weeks. Almost all tracked open issues have seen activity in the last three months. Only 14% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 168
New in 7 days: 243
Closed in 7 days: 226
Avg open age: 192 days
Stale 30+ days: 127
Stale 90+ days: 0

Recent activity

Opened in 7 days: 240
Closed in 7 days: 224
Comments in 7 days: 9
Events in 7 days: 186

Top labels

  • bug (347)
  • enhancement (307)
  • 3.0 (158)
  • schema (89)
  • 4.0 (72)
  • platform (31)
  • documentation (29)
  • working as intended (29)

Detailed Description

Effect is a TypeScript library for building production-ready applications with composable, type-safe abstractions for managing side effects, errors, and concurrency.

The library addresses the challenge of writing reliable, maintainable TypeScript applications by providing a functional effect system that treats side effects, errors, and asynchronous operations as first-class values. Rather than relying on exceptions and imperative control flow, Effect lets developers compose operations declaratively, with the runtime handling execution, error recovery, and resource cleanup. This approach enables reasoning about program behavior statically through the type system while deferring actual execution until explicitly triggered.

Effect suits teams building backend services, CLI tools, or other systems where reliability and observability matter. The library includes built-in support for dependency injection, structured concurrency, schema validation, and OpenTelemetry integration, reducing the need to wire together separate packages. It works well for applications requiring complex error handling, resource management across async boundaries, or coordination of multiple concurrent operations. Developers accustomed to functional programming patterns or languages with effect systems will find the model natural; those preferring imperative styles may face a steeper learning curve.

The project maintains active development with regular updates across its core modules and ecosystem packages. The codebase shows consistent refinement of APIs and internal implementations, with attention to both new capabilities and stability of existing interfaces. Documentation and examples receive ongoing attention alongside core library work. The project demonstrates engagement with real-world production concerns through its observability features and platform abstractions, suggesting the maintainers prioritize practical usability alongside theoretical soundness.