---
title: "Fly.io ❤️  Bun"
description: "Fly.io is preparing support for Bun as Bun 1.0 approaches, expanding beyond its ongoing Node.js work because Bun aims for complete Node.js API compatibility. With flyctl 0.1.54 and @flydotio/dockerfile 0.3.3, users can launch and deploy Bun applications through fly launch and fly deploy if Bun 0.5.3 or later is installed and package.json includes an eligible start, module/type, or main configuration. The post says applications following Bun’s Quickstart and Fly’s hands-on walkthrough can be deployed, and provides a sample. Support is beta, with noted compatibility issues including bun install lacking --prune, unsupported throwIfNoEntry in fs.statSync, and readline-based programs failing to exit; shared Dockerfile generation means fixes for either runtime generally benefit both."
---

# Fly.io ❤️  Bun

[Fly.io](https://yomu.fyi/company/fly-io) · Jul 11, 2023

**Type:** Announcement

## Summary

Fly.io is preparing support for Bun as Bun 1.0 approaches, expanding beyond its ongoing Node.js work because Bun aims for complete Node.js API compatibility. With flyctl 0.1.54 and @flydotio/dockerfile 0.3.3, users can launch and deploy Bun applications through fly launch and fly deploy if Bun 0.5.3 or later is installed and package.json includes an eligible start, module/type, or main configuration. The post says applications following Bun’s Quickstart and Fly’s hands-on walkthrough can be deployed, and provides a sample. Support is beta, with noted compatibility issues including bun install lacking --prune, unsupported throwIfNoEntry in fs.statSync, and readline-based programs failing to exit; shared Dockerfile generation means fixes for either runtime generally benefit both.

## Context

Fly.io is expanding its JavaScript runtime support beyond Node.js ahead of Bun 1.0. Bun is identified as the next choice because it aims for complete Node.js API compatibility.

## Approach / What changed

Support is provided through flyctl 0.1.54 and @flydotio/dockerfile 0.3.3, allowing fly launch and fly deploy for Bun applications that use Bun 0.5.3 or later and meet specified package.json entry conditions. A deployable sample is also available.

## Takeaways

- Bun deployment requires Bun 0.5.3 or later and a package.json with a start script entry, a module entry paired with module as the type, or a main entry.
- The beta support encountered missing bun install --prune support, unsupported throwIfNoEntry in fs.statSync, and readline-based programs that never exit; global.prompt resolved the latter issue for @flydotio/dockerfile.
- Bun and Node.js use the same Dockerfile generator, so fixes made for either runtime will generally benefit both.

**Tags:** [Bun](https://yomu.fyi/topic/bun), [Fly.io](https://yomu.fyi/topic/fly-io), [JavaScript](https://yomu.fyi/topic/javascript)

- Source: [Fly.io](https://fly.io/blog/flydotio-heart-bun)
- Source URL: https://fly.io/blog/flydotio-heart-bun
- Ingested by Yomu: 2026-09-02T11:57:44.756Z

[Read original post](https://fly.io/blog/flydotio-heart-bun)
