Lila — сервер на Scala, на котором работает lichess.org: бесплатная шахматная онлайн-платформа без рекламы с открытым исходным кодом.
Effect-TS/effect
Библиотека TypeScript для создания готовых к продакшену приложений с типизированными ошибками, внедрением зависимостей, структурированной конкурентностью и валидацией схем.
- Звёзды
- 17,376
- Форки
- 875
- Открытые issues
- 82
- Последний коммит
- 20 часов назад
Что это?
Effect — библиотека TypeScript для создания надёжных, удобных в поддержке и типобезопасных приложений. Она решает сложные задачи, возникающие при масштабировании: ошибки, отслеживаемые системой типов, внедрение зависимостей, структурированная конкурентность, планирование, трассировка и унифицированная валидация схем.
Основной пакет — `effect`, а в монорепозитории есть набор дополнительных пакетов. Среди них — платформенные сервисы для Node.js, Bun, Deno и браузера; SQL-клиенты для PostgreSQL, MySQL, SQLite и других вариантов, ClickHouse и других СУБД; интеграции с AI-провайдерами OpenAI, Anthropic и OpenRouter; интеграция с OpenTelemetry; вспомогательные средства для Vitest; а также генераторы кода для OpenAPI и GraphQL.
Effect 4.x — текущий релиз с долгосрочной поддержкой. Для него требуется TypeScript 5.9 или новее с включённым флагом `strict`. Пользователи Effect 3.x могут воспользоваться руководством по миграции, а исходный код v3 находится в отдельной ветке.
Ключевые возможности
- 01Типизированные ошибки, отслеживаемые системой типов
- 02Внедрение зависимостей для составления сервисов
- 03Структурированная конкурентность и планирование
- 04Трассировка и интеграция с OpenTelemetry
- 05Унифицированная валидация схем
- 06SQL-клиенты и платформенные сервисы для разных сред выполнения
Сценарии использования
- Создание крупных бэкендов на TypeScript, которым нужны явная обработка ошибок и настройка зависимостей
- Написание типобезопасного кода для работы с SQL в PostgreSQL, MySQL или SQLite
- Добавление трассировки OpenTelemetry в существующие сервисы на TypeScript
- Генерация типизированных клиентов Effect по спецификациям OpenAPI или GraphQL
Быстрый старт
- 1
Установите основной пакет с помощью npm
npm install effect
Что важно знать
- Требуется TypeScript версии 5.9 или новее с включённым флагом strict.
- Effect 4.x — это LTS-релиз. Чтобы обновиться, пользователям Effect 3.x необходимо следовать руководству по миграции.
В подборках
Темы
Частые вопросы
- Что такое effect?
- Библиотека TypeScript для создания готовых к продакшену приложений с типизированными ошибками, внедрением зависимостей, структурированной конкурентностью и валидацией схем. Effect — библиотека TypeScript для создания надёжных, удобных в поддержке и типобезопасных приложений. Она решает сложные задачи, возникающие при масштабировании: ошибки, отслеживаемые системой типов, внедрение зависимостей, структурированная конкурентность, планирование, трассировка и унифицированная валидация схем.
- effect можно использовать бесплатно? Какая у него лицензия?
- effect распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- effect всё ещё поддерживается?
- Активно поддерживается. Последний коммит в effect — 24 окт. 2026 г..
- Для чего можно использовать effect?
- Создание крупных бэкендов на TypeScript, которым нужны явная обработка ошибок и настройка зависимостей Написание типобезопасного кода для работы с SQL в PostgreSQL, MySQL или SQLite Добавление трассировки OpenTelemetry в существующие сервисы на TypeScript Генерация типизированных клиентов Effect по спецификациям OpenAPI или GraphQL
- Как установить effect?
- Установите основной пакет с помощью npm: npm install effect
- Где скачать effect?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Effect-TS/effect
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Экспериментальный порт компилятора TypeScript 7 на Rust (tsc) с теми же CLI, language server и API, а также встроенной диагностикой Effect.
Прогрессивный фреймворк для Node.js, позволяющий создавать эффективные и масштабируемые серверные приложения на TypeScript или JavaScript.
Конструктор TypeScript-клиента для fetch с валидацией по схемам, типизированными ответами, повторами запросов, таймаутами и отслеживанием прогресса.
Фундаментальный Java-фреймворк для корпоративных приложений: предоставляет внедрение зависимостей, MVC и инфраструктурную поддержку для всей экосистемы Spring.
Лёгкий фреймворк для внедрения зависимостей в Kotlin и Kotlin Multiplatform с Kotlin DSL и аннотациями JSR-330.