Что такое Bun?
Bun — это быстрый универсальный JavaScript Runtime, созданный с нуля для современной экосистемы JavaScript. Он разработан как прямая замена Node.js со значительно лучшей производительностью, со встроенными бандлером, тест-раннером и менеджером пакетов — всё в одном исполняемом файле.
🔥 Ключевые возможности Bun
⚡ Исключительно быстрый
До 4 раз быстрее Node.js для многих рабочих нагрузок, с оптимизированным движком JavaScript и нативной компиляцией кода.
📦 Встроенный менеджер пакетов
Устанавливайте пакеты до 25 раз быстрее, чем npm, с встроенным управлением пакетами и поддержкой файлов блокировки.
🛠️ Встроенный бандлер
Нативный бандлер с tree-shaking, разделением кода и горячей перезагрузкой — webpack и rollup не нужны.
🧪 Тест-раннер
Встроенный тест-раннер, совместимый с Jest API, с параллельным выполнением и режимом наблюдения.
🔄 Совместимость с Node.js
Прямая замена Node.js с отличной совместимостью для npm-пакетов и существующих API.
📝 Нативный TypeScript
Запускайте файлы TypeScript напрямую без шага компиляции, со встроенной транспиляцией.
📦 Установка из debian.griffo.io
Шаг 1: Добавить репозиторий
📋 Доступные пакеты Bun
debian.griffo.io предоставляет три различных пакета Bun для разных нужд:
Метапакет, который автоматически устанавливает последний стабильный bun-one. Это рекомендуемый вариант для большинства пользователей — он гарантирует получение последней стабильной версии.
Последняя стабильная версия Bun Runtime. Этот пакет содержит готовую к продуктиву версию с оптимизациями для производительности и стабильности.
Сборка с включённым профилированием Bun с отладочными символами и возможностями профилирования. Идеально для разработки, отладки и анализа производительности. Немного больший бинарный файл с дополнительной отладочной информацией.
🔄 Управление несколькими версиями Bun
Можно установить как bun-one, так и bun-profile одновременно и переключаться между ними с помощью системы update-alternatives Debian:
Установить обе версии:
Настроить альтернативы (выполняется автоматически при установке пакета):
Переключаться между версиями интерактивно:
Проверить текущую версию:
Шаг 2: Установить Bun
Шаг 3: Проверить установку
🚀 Примеры быстрого старта
Создать новый проект:
Установить пакеты (быстрее чем npm):
Запустить TypeScript напрямую:
Собрать для продуктива:
Запустить тесты:
🔧 Конфигурация
Bun можно настроить с помощью файла bunfig.toml в корне вашего проекта или домашнем каталоге:
⚡ Преимущества производительности
📦 Установка пакетов
До 25 раз быстрее npm, в 4 раза быстрее pnpm для установки зависимостей.
🏃 Производительность выполнения
В 4 раза быстрее Node.js для многих JavaScript-нагрузок с оптимизированным движком.
🛠️ Скорость бандлинга
Нативный бандлер значительно быстрее webpack, rollup или esbuild.
🧪 Выполнение тестов
Параллельное выполнение тестов со встроенным раннером — быстрее Jest или Vitest.
📦 Репозиторий сборки пакетов
Пакеты для Debian собираются и поддерживаются автоматически в этом репозитории GitHub:
- 🥟 bun-debian - Сборки последних выпусков
🔗 Связанные пакеты
Дополните рабочий процесс разработки этими инструментами от debian.griffo.io:
- Язык программирования Zig - Системный язык программирования
- Python менеджер uv - Быстрый менеджер пакетов Python
- Терминал Ghostty - Быстрый эмулятор терминала
- lazygit - Терминальный интерфейс для git