Skip to content

Latest commit

 

History

11,219 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pkg.pr.new

Effect

Effect is a library for building robust, maintainable, type-safe, and production grade applications in TypeScript. It helps you handle the hard problems at scale: typed errors, dependency injection, structured concurrency, scheduling, tracing, and unified schema validation.

Effect 4.x is a long-term support (LTS) release. If you are upgrading from Effect 3.x, follow the migration guide.

Installation

npm install effect

Requirements

  • TypeScript 5.9 or newer. TypeScript 7 is recommended for the best performance and compatibility with Effect's TypeScript tooling.
  • Node.js 18 or newer is the general minimum for running Effect on Node.js. Some integration packages require newer runtimes; for example, @effect/sql-sqlite-node requires Node.js 22.16 or newer.
  • Strict type-checking: the strict flag must be enabled in your tsconfig.json.

Links

  • Website: documentation, guides, and news
  • Discord: ask questions, share what you're building, and talk to the core team
  • Community: meetups and events, or bring Effect to your own
  • Issues: bug reports and feature requests
  • Jobs: companies hiring Effect developers
  • Follow us on X, Bluesky, and LinkedIn

Let's talk

Whether your team is considering Effect, rolling it out, or already running it in production, we'd love to hear from you: what you're building, what works, and what you need from Effect next.

  • Talk to the maintainers. Introduce your team on Discord or email contact@effectful.co. We're happy to connect privately on Slack or Discord for feedback and help with adoption.
  • Production support. We're exploring how to better support teams running Effect in production. If your organization has specific support needs, let's discuss them.
  • Adoption help. Our adoption partners offer implementation, consulting, team extension, training, and commercial support.

Feedback from teams using and evaluating Effect directly shapes what we stabilize and build next.

Long-term support

Teams depend on Effect for systems they expect to run for years. Effect 4.x is a long-term support (LTS) release with the following guarantees:

  • At least three years of support, including bug and security fixes.
  • Bug fixes for one year after the next major version is released.
  • Security fixes for two years after the next major version is released.

Stable APIs reserve breaking changes for major releases. APIs marked unstable may change in minor releases, and experimental APIs may change in patch releases.

Effect v3

The Effect v3 source code is available on the v3 branch, which is also where issues and pull requests meant for Effect v3 should be targeted. To upgrade, see the migration guide.

Packages

This monorepo contains the core effect package alongside integration packages that extend it. All packages listed below are released together with synchronized versions.

Package Description API Reference
effect The core package docs
@effect/platform-browser Platform services for the browser docs
@effect/platform-bun Platform services for Bun docs
@effect/platform-deno Platform services for Deno docs
@effect/platform-node Platform services for Node.js docs
@effect/platform-node-shared Shared services for Node.js-compatible runtimes docs
@effect/sql-clickhouse SQL client for ClickHouse docs
@effect/sql-d1 SQL client for Cloudflare D1 docs
@effect/sql-libsql SQL client for libSQL docs
@effect/sql-mssql SQL client for Microsoft SQL Server docs
@effect/sql-mysql2 SQL client for MySQL docs
@effect/sql-pg SQL client for PostgreSQL docs
@effect/sql-pglite SQL client for PGlite docs
@effect/sql-sqlite-bun SQL client for SQLite via bun:sqlite docs
@effect/sql-sqlite-do SQL client for Cloudflare Durable Objects SQLite docs
@effect/sql-sqlite-node SQL client for SQLite via node:sqlite docs
@effect/sql-sqlite-react-native SQL client for SQLite in React Native docs
@effect/sql-sqlite-wasm SQL client for SQLite compiled to WebAssembly docs
@effect/ai-anthropic Anthropic provider for the Effect AI modules docs
@effect/ai-openai OpenAI provider for the Effect AI modules docs
@effect/ai-typesafe TypeSafe decision provider for the Effect AI modules docs
@effect/ai-openai-compat OpenAI-compatible API provider for the Effect AI modules docs
@effect/ai-openrouter OpenRouter provider for the Effect AI modules docs
@effect/atom-react React bindings for Effect Atom docs
@effect/atom-solid SolidJS bindings for Effect Atom docs
@effect/atom-vue Vue bindings for Effect Atom docs
@effect/opentelemetry OpenTelemetry integration docs
@effect/vitest Helpers for testing with Vitest docs
@effect/docgen Documentation generator for Effect projects docs
@effect/doctest Runs JSDoc examples as Vitest tests docs
@effect/openapi-generator Generate Effect code from OpenAPI specifications docs

License

MIT

Sponsor this project

Used by

Contributors

Languages