effect README

The project's README from github.com/Effect-TS/effect. As one markdown file: README.md.

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 V4 is currently a release candidate. The main branch contains v4 development.

Install V4 RC

npm install effect@rc

Requirements

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.

Packages

This monorepo contains the core effect package alongside integration packages that extend it. All v4 packages are published under the rc tag on npm.

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-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

Resources

License

MIT

effect (Effect-TS/effect)

Searching Database…

17.3K ·GitHub
What is this?Effect is a TypeScript library for building robust, maintainable, type-safe, production-grade applications. It tackles the hard problems at scale: typed errors, dependency injection, structured concurrency, scheduling, tracing, and schema validation.
Is it a single library or a whole ecosystem of packages?An ecosystem: the monorepo holds a core effect package plus integration packages that extend it — platform services, SQL clients, AI providers, UI bindings, OpenTelemetry, and testing helpers.
What does my project need before adding Effect?TypeScript 5.9 or newer with the strict flag enabled in tsconfig.json — TypeScript 7 is recommended for the best performance with Effect's tooling. On Node.js, version 18 or newer is the general minimum.
Will it run on my Node version?Probably — Node.js 18+ is the general minimum, but some integration packages need newer runtimes; for example @effect/sql-sqlite-node requires Node.js 22.16 or newer.
Where can Effect run — is it Node-only?No. Besides Node.js there are platform packages for Bun, Deno, and the browser, and the SQL clients even target Cloudflare D1, Cloudflare Durable Objects, React Native, and SQLite compiled to WebAssembly.
Which databases does it ship clients for?PostgreSQL, MySQL, Microsoft SQL Server, ClickHouse, libSQL, PGlite, Cloudflare D1, and SQLite in several flavors (node, Bun, WASM, React Native, Durable Objects), all via the @effect/sql-* client packages.
Does it integrate with AI providers like OpenAI or Anthropic?Yes — the Effect AI modules have providers for Anthropic, OpenAI, any OpenAI-compatible API, and OpenRouter: @effect/ai-anthropic, @effect/ai-openai, @effect/ai-openai-compat, and @effect/ai-openrouter.
Does it play well with React, Vue, or SolidJS?Yes — Effect Atom ships official bindings for React, SolidJS, and Vue. For testing there are Vitest helpers (@effect/vitest), a runner that turns JSDoc examples into tests (@effect/doctest), and an OpenTelemetry integration.
What are similar projects?gitagent, mastra, auth, agento11y, lo, ramda, dagger, mlflow
Creator
Effect-TS
Size
144.6 MB
Stars
17.3K
Age
6y
Commits · 90 Days