← Ко всем open source проектам

Bun

oven-sh/bun

Bun — единый инструментарий для JavaScript и TypeScript: среда выполнения, пакетный менеджер, запуск скриптов, тесты и сборка в одном исполняемом файле.

Форки 4,693
Автор oven-sh
Язык Rust
Лицензия NOASSERTION
Обновлено 2026-06-09

Что это такое

Bun — попытка собрать повседневный JavaScript-инструментарий в один быстрый исполняемый файл. Внутри есть рантайм, пакетный менеджер, запуск скриптов, тестовый раннер, поддержка TypeScript и JSX, а также совместимость с большой частью Node.js-мира.

Проект написан на Zig и использует JavaScriptCore. Его идея не только в скорости, но и в уменьшении количества отдельных инструментов: вместо node, npm, npx, тестового раннера и сборщика разработчик может попробовать один бинарник.

Что внутри и как используют

Внутри — рантайм, пакетный менеджер, тесты, документация, совместимость с Node.js API, загрузчики файлов, lockfile и интеграции. Bun можно применять в новых проектах, а часть команд работает и в существующих Node.js-приложениях.

Один бинарник для нескольких задач

Пример показывает, что Bun пытается заменить сразу несколько привычных команд из Node.js-разработки.

Язык: Bash
bun install
bun run start
bun test
bun run index.tsx
bunx cowsay "Hello, world!

Типовой сценарий: установить зависимости через `bun install`, запускать scripts через `bun run`, выполнять TypeScript-файлы напрямую, запускать тесты через `bun test`. Для команд это способ ускорить локальную разработку и упростить набор инструментов.

Сильные стороны и ограничения

Сильная сторона Bun — цельность и скорость старта. Он особенно привлекателен там, где хочется меньше конфигурации и быстрее выполнять типовые операции.

Ограничение — совместимость. Node.js-экосистема огромна, и не каждый пакет или редкий API будет вести себя одинаково. Перед переносом большого проекта нужно прогнать тесты, сборку, серверные сценарии и CI.