Describe the feature
Add Bun as a JavaScript runtime and package manager option, alongside the existing npm/yarn choices and Node-based presets.
Proposed scope
- New "Vanilla Bun" preset (parallel to the existing Vanilla Node.js preset).
bun added to the shared wizards pick-node-pkg-mgr and pick-laravel-node, which gives it to Laravel, Symfony, CodeIgniter, and WordPress for free.
- Explicit
bun option added to presets with inline package-manager prompts: Laravel+Octane, Next.js, Nuxt.js, Express.js, AdonisJS.
Open question – runtime vs package manager
Should "bun" only manage packages (deps installed via oven/bun:1, app still runs on kooldev/node:20), or should it also switch the app service to the Bun runtime (oven/bun:1)? The framework presets pin kooldev/node:20, so this affects whether kool exec app bun works and whether the app actually runs on Bun. (I would prefer the option to add Bun for everything if possible)
New dependency
Introduces the public oven/bun:1 image. Open to maintaining a kooldev/bun image instead if preferred for consistency.
Backward compatibility
None — purely additive; npm/yarn remain the defaults.
Use cases
Bun offers reduced memory usage and way faster installation of packages, and runtime improvements in many scenarios.
Example
Creating a Laravel project currently offers npm or yarn; this adds bun as a third option to that menu.
Describe the feature
Add Bun as a JavaScript runtime and package manager option, alongside the existing npm/yarn choices and Node-based presets.
Proposed scope
bunadded to the shared wizardspick-node-pkg-mgrandpick-laravel-node, which gives it to Laravel, Symfony, CodeIgniter, and WordPress for free.bunoption added to presets with inline package-manager prompts: Laravel+Octane, Next.js, Nuxt.js, Express.js, AdonisJS.Open question – runtime vs package manager
Should "bun" only manage packages (deps installed via
oven/bun:1, app still runs onkooldev/node:20), or should it also switch the app service to the Bun runtime (oven/bun:1)? The framework presets pinkooldev/node:20, so this affects whetherkool exec app bunworks and whether the app actually runs on Bun. (I would prefer the option to add Bun for everything if possible)New dependency
Introduces the public
oven/bun:1image. Open to maintaining akooldev/bunimage instead if preferred for consistency.Backward compatibility
None — purely additive; npm/yarn remain the defaults.
Use cases
Bun offers reduced memory usage and way faster installation of packages, and runtime improvements in many scenarios.
Example
Creating a Laravel project currently offers npm or yarn; this adds
bunas a third option to that menu.