skip to content
ai · TSMC ADDS $100 BILLION TO ARIZONA CHIP BET, TOTAL HITS $265 BILLIONai · META WILL ALERT PARENTS IF TEENS DISCUSS SUICIDE WITH META AIai · ROBLOX'S "BUILD" LETS ANYONE MAKE A GAME FROM THEIR PHONE WITH AIbusiness-of-tech · APPLE RECLAIMS WORLD MOST VALUABLE COMPANY TITLE, NVIDIA BOTTLES ITconsumer-tech · GOOGLE ADDS YOUTUBE MUSIC, INSTACART & CANVA TO AI MODE SEARCHai · ZOOX REALLS ENTURE ROBOTAXI FLEET OVER SMOKE DETECTION FAILUREai · TSMC ADDS $100 BILLION TO ARIZONA CHIP BET, TOTAL HITS $265 BILLIONai · META WILL ALERT PARENTS IF TEENS DISCUSS SUICIDE WITH META AIai · ROBLOX'S "BUILD" LETS ANYONE MAKE A GAME FROM THEIR PHONE WITH AIbusiness-of-tech · APPLE RECLAIMS WORLD MOST VALUABLE COMPANY TITLE, NVIDIA BOTTLES ITconsumer-tech · GOOGLE ADDS YOUTUBE MUSIC, INSTACART & CANVA TO AI MODE SEARCHai · ZOOX REALLS ENTURE ROBOTAXI FLEET OVER SMOKE DETECTION FAILUREai · TSMC ADDS $100 BILLION TO ARIZONA CHIP BET, TOTAL HITS $265 BILLIONai · META WILL ALERT PARENTS IF TEENS DISCUSS SUICIDE WITH META AIai · ROBLOX'S "BUILD" LETS ANYONE MAKE A GAME FROM THEIR PHONE WITH AIbusiness-of-tech · APPLE RECLAIMS WORLD MOST VALUABLE COMPANY TITLE, NVIDIA BOTTLES ITconsumer-tech · GOOGLE ADDS YOUTUBE MUSIC, INSTACART & CANVA TO AI MODE SEARCHai · ZOOX REALLS ENTURE ROBOTAXI FLEET OVER SMOKE DETECTION FAILURE
BAD/GATEWAY*

DIGITALOCEAN GAINS NATIVE BUN SUPPORT

Deploy bun applications from your repo without writing a single line of configuration.

by editor5 min readcomments soon

DigitalOcean app platform gains native bun support
· Image credit: DigitalOcean

DigitalOcean is adding native support for Bun on its App Platform, allowing developers to deploy applications with the modern JavaScript runtime without manual configuration. Bun, the all-in-one runtime, bundler, and package manager that has been gathering momentum as a drop-in replacement for Node.js, is now a first-class citizen on the platform.

The move comes in response to customer demand. Bun was a top request from developers using App Platform, and the implementation leans heavily on the platform's existing Cloud Native Buildpacks infrastructure. You connect a GitHub, GitLab, or Bitbucket repository containing a bun.lock file and the build system takes over. No Dockerfile to maintain, no environment variables to tweak, no configuration beyond the code itself.

Bun's selling points are well known within the JavaScript community: faster startup times and lower memory usage than traditional runtimes. For a platform that bills itself on simplicity, pairing those performance characteristics with zero-config deployment is a clear competitive play. Developers who are tired of waiting for containers to build or wrestling with runtime versioning can now push code and let App Platform handle the rest.

HOW THE BUILDPACKS DO IT

The detection mechanism is straightforward. App Platform's Cloud Native Buildpacks scan the root directory of your repository. If a bun.lock file is present, the system selects the Bun buildpack and proceeds through three distinct phases: install, build, and start.

During install, App Platform runs Bun install to fetch dependencies. If the Bun.lock hasn't changed since the last build, the platform re-uses the cached node_modules to speed things up. The build phase runs Bun run build by default, though you can override that by defining a build_command in the App Spec. For more granular control, you can use digitalocean-prebuild and digitalocean-postbuild package.json scripts to run actions before or after dependency install.

Start phase defaults to running 'to bun run st'art to launch the application. The specific Bun version is selected from the BUN_VERSION environment variable; if no version is specified, App Platform pulls the latest from Bun's GitHub Releases. Both Bun and Node versions are cached between builds to keep subsequent deployments fast, only refreshing when you request a different version.

MIGRATING FROM NODE.JS TO BUN

If you already have a Node.js application and want to switch to Bun for the runtime or just as a package manager, the migration path is deliberately simple. Delete your package-lock.json or yarn.lock, run Bun install locally to generate Bun.lock, commit the changes, and push. App Platform sees the Bun.lock, drops the Node buildpack, and picks up the Bun buildpack automatically. The platform handles the transition without any manual intervention.

There is a nuance worth noting: if you only want to use Bun as your package manager but keep Node.js as the runtime, App Platform will still install Node.js in the background. The buildpacks are smart enough to detect that scenario and provide both runtimes when needed. That kind of compatibility-first thinking matters for teams that aren't ready for a full runtime swap.

NEXT.JS AND FULL-STACK REACT

Bun works natively with Next.js, meaning you can deploy full-stack React applications on App Platform using the Bun runtime. There is one gotcha: if you are deploying a Next.js project (including those using Incremental Static Regeneration), you must update your scripts to explicitly use the Bun runtime for the build and dev processes. This ensures Next.js uses Bun's runtime features correctly during the build. It's a small configuration step but an important one to call out for anyone doing a straight migration from a Node-based Next.js setup.

NEW VS EXISTING APPS

For a brand new application, the workflow is about as frictionless as it gets. Push a repo that contains a bun.lock file, tell App Platform to deploy it, and the platform does the rest. For an existing App Platform app currently running on Node, you switch your package manager locally and push the update. App Platform detects the change and triggers a new build with the Bun buildpack. No need to recreate the application or manually reconfigure the runtime.

This is the kind of plumbing that most developers will never think about, which is exactly the point. The platform abstracts the runtime selection behind a file marker and a set of sensible defaults. If you are the type of developer who prefers a leaner runtime and faster builds over the sprawling Node.js ecosystem, DigitalOcean just made that choice trivial.

WHY THIS MATTERS

The JavaScript ecosystem is fragmenting in a healthy direction. Bun and the upcoming Node.js improvements are all competing on startup time, developer experience, and tooling integration. Bun's integrated bundler and package manager reduce the need for separate tooling and deployment, simplifying the mental model. The runtime is fast enough to replace Node.js in many production workloads.

DigitalOcean's timing is smart. Bun has reached a level of stability where the community is actively seeking production-ready hosting. By meeting that demand with a zero-config offering, App Platform positions itself as the obvious choice for developers building with Bun. The fact that the platform handled the transition without requiring users to learn new deployment paradigms means the switching cost is nearly zero.

For teams already using App Platform for Node.js applications, the upgrade consists of a three-step checklist and a commit. That is the kind of friction-free developer experience that keeps people on a platform rather than shipping them off to AWS ECS or a Kubernetes cluster.

You still need to handle your own database, environment variables, and domain configuration. But the core runtime provisioning problem is solved. Push code, get a running Bun application. It is almost anticlimactic how smooth it is.


what did you make of it?

share

more from consumer tech