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
Что это такое?Effect — это TypeScript-библиотека для создания надёжных, удобных в сопровождении, типобезопасных приложений промышленного уровня. Она решает сложные задачи масштабирования: типизированные ошибки, внедрение зависимостей, структурную конкурентность, планирование, трассировку и валидацию схем.
Это одна библиотека или целая экосистема пакетов?Это экосистема: в монорепозитории лежит основной пакет effect плюс пакеты интеграции, которые его расширяют — платформенные сервисы, SQL-клиенты, провайдеры AI, привязки для UI, OpenTelemetry и вспомогательные инструменты для тестирования.
Что нужно в проекте, прежде чем добавлять Effect?TypeScript 5.9 или новее с включённым флагом strict в tsconfig.json — для лучшей производительности с инструментами Effect рекомендуется TypeScript 7. На Node.js минимальная версия — 18 или новее.
Заработает ли это на моей версии Node?Скорее всего да — минимальная версия обычно Node.js 18+, но некоторым пакетам интеграции нужны более новые рантаймы; например, @effect/sql-sqlite-node требует Node.js 22.16 или новее.
Где может работать Effect — только на Node?Нет. Кроме Node.js есть платформенные пакеты для Bun, Deno и браузера, а SQL-клиенты поддерживают даже Cloudflare D1, Cloudflare Durable Objects, React Native и SQLite, скомпилированный в WebAssembly.
Для каких баз данных там есть клиенты?PostgreSQL, MySQL, Microsoft SQL Server, ClickHouse, libSQL, PGlite, Cloudflare D1 и SQLite в нескольких вариантах (node, Bun, WASM, React Native, Durable Objects) — всё через клиентские пакеты @effect/sql-*.
Интегрируется ли он с AI-провайдерами вроде OpenAI или Anthropic?Да — модули Effect AI имеют провайдеры для Anthropic, OpenAI, любого OpenAI-совместимого API и OpenRouter: @effect/ai-anthropic, @effect/ai-openai, @effect/ai-openai-compat и @effect/ai-openrouter.
Хорошо ли он работает с React, Vue или SolidJS?Да — Effect Atom поставляется с официальными привязками для React, SolidJS и Vue. Для тестирования есть хелперы для Vitest (@effect/vitest), раннер, превращающий примеры из JSDoc в тесты (@effect/doctest), и интеграция с OpenTelemetry.
What are similar projects?gitagent, mastra, auth, agento11y, lo, ramda, dagger, mlflow
Creator
Effect-TS
Size
147.7 MB
Stars
17.3K
Age
6y
Commits · 90 Days