workerd VS bun

Compare workerd vs bun and see what are their differences.

workerd

The JavaScript / Wasm runtime that powers Cloudflare Workers (by cloudflare)

bun

Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one (by oven-sh)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
workerd bun
37 288
5,704 70,839
3.6% 2.2%
9.9 10.0
6 days ago about 21 hours ago
C++ Zig
Apache License 2.0 -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

workerd

Posts with mentions or reviews of workerd. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-05.
  • Cloudflare acquires PartyKit to allow developers to build real-time multi-user
    3 projects | news.ycombinator.com | 5 Apr 2024
    Standards bodies only standardize things after they've been proven to work. You can't standardize a new idea before offering it to the market. It's hard enough to get just one vendor to experiment with an idea (it literally took me years to convince everyone inside Cloudflare that we should build Durable Objects). Getting N competing vendors to agree on it -- before anything has been proven in the market -- is simply not possible.

    But the Durable Objects API is not complicated and there's nothing stopping competing platforms from building a compatible product if they want. Much of the implementation is open source, even. In fact, if you build an app on DO but decide you don't want to host it on Cloudflare, you can self-host it on workerd:

    https://github.com/cloudflare/workerd

  • Python Cloudflare Workers
    4 projects | news.ycombinator.com | 2 Apr 2024
    In any case, I welcome this initiative with my open hands and look forward all the cool apps that people will now build with this!

    [1] https://pyodide.org/

    [2] https://github.com/cloudflare/workerd/blob/main/docs/pyodide...

    [3] https://github.com/cloudflare/workerd/pull/1875

  • LLRT: A low-latency JavaScript runtime from AWS
    10 projects | news.ycombinator.com | 8 Feb 2024
    For ref:

    - https://blog.cloudflare.com/workerd-open-source-workers-runt...

    - https://github.com/cloudflare/workerd

  • A list of JavaScript engines, runtimes, interpreters
    23 projects | /r/learnjavascript | 10 Dec 2023
    workerd
  • WinterJS
    6 projects | news.ycombinator.com | 28 Oct 2023
    I think this is for people who want to run their own cloudflare workers (sort of) and since nobody wants to run full node for that, they want a small runtime that just executes js/wasm in an isolated way. But I wonder why they don't tell me how I can be sure that this is safe or how it's safe. Surely I can't just trust them and it explicitly mentions that it still has file IO so clearly there is still work I need to do customize the isolation further. But then they don't show any info on that core usecase. But then that's probably because they don't really want you to use this to run it on your own, they are selling you on running things on their edge platform called "Wasmer Edge". So that's probably why this is so light on information.. the motivation isn't to get you to use this yourself, just to use this their hosted edge platform. But then I wonder why I wouldn't just use https://github.com/cloudflare/workerd which is also open source. Surely that is fast enough? If not then it should show some benchmarks?
  • Cloudflare workers is adopting Ada URL parser
    1 project | news.ycombinator.com | 5 Oct 2023
  • Cap'n Proto 1.0
    10 projects | news.ycombinator.com | 28 Jul 2023
    i love how the main reference for workerd can be just one capnp file.

    https://github.com/cloudflare/workerd/blob/main/src/workerd/...

    this changed my world how i think about computing on the web.

    if there was just a good enough js library as for lua and you could directly send capnp messages to workerd instead of always going through files. I guess one day i have to relearn c++ and understand how the internals actually work.

  • Cloudflare Workers Introduces Connect() API to Create TCP Sockets
    3 projects | news.ycombinator.com | 29 May 2023
    A significant chunk of it is open source: https://github.com/cloudflare/workerd/
  • JSON with multiline strings
    2 projects | /r/javascript | 19 May 2023
    Some of the configuration files for applications wind up being an entire language unto themselves, e.g., https://github.com/cloudflare/workerd/blob/1b5057f2bfcfedf146f6f79ff04e99903d55412b/src/workerd/io/compatibility-date.capnp
  • Am I out of touch for trying to limit my stack to containers?
    1 project | /r/ExperiencedDevs | 18 May 2023
    Edge runtimes are very good alternatives to containers that shouldn't be dismissed for "not being containers". They're often faster, more scalable, and cheaper than containers. Them being so lightweight also enable a "nanoservice architecture" – being able to run every service on a single computer instead of running different services on different computers and having to deal with network latency and unreliability.

bun

Posts with mentions or reviews of bun. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-25.
  • Node Test Runner vs Bun Test Runner (with TypeScript and ESM)
    1 project | dev.to | 26 Apr 2024
    It has a decent compatibility with both Jest and Vitest's APIs (you can track progress here so you can use it as almost a drop-in replacement for either. Just as Node's, it has describe/it, mock, test and others, but with the expect syntax (which I find more readable). For example:
  • SPA-Like Navigation Preserving Web Component State
    2 projects | dev.to | 25 Apr 2024
    In this third and final article in the series on HTML Streaming, we will explore the practical implementation of the Diff DOM Streaming library in web browsing. This approach will allow any website using web components to retain its state during browsing. We will discuss in detail how to achieve this step by step using VanillaJS and Bun.
  • React Server Components Example with Next.js
    9 projects | dev.to | 16 Apr 2024
    At Node Conference 2023, Jarred Sumner (creator of Bun) showed a demo of server components in Bun, so there is at least partial support in that ecosystem. The Bun repo provides bun-plugin-server-components as the official plugin for server components. And while I haven’t looked at it in-depth, Marz claims to be a “React Server Components Framework for Bun”.
  • Bun – A fast all-in-one JavaScript runtime
    1 project | news.ycombinator.com | 6 Apr 2024
  • From Node to Bun: A New Dawn for JavaScript Engines?
    1 project | dev.to | 3 Apr 2024
    Continuously evolving, Bun is currently optimized for MacOS and Linux, with ongoing efforts towards Windows compatibility. Tailored for resource-constrained environments like serverless functions, it emerges as an ideal solution. The Bun team is committed to achieving comprehensive Node.js compatibility and seamless integration with prevalent frameworks. For those intrigued by Bun's potential and want to give it a try, more information is available on its website at https://bun.sh/.
  • Bun - The One Tool for All Your JavaScript/Typescript Project's Needs?
    4 projects | dev.to | 2 Apr 2024
    Let’s say you are interested in learning more about Bun and probably give it a try. Bun has a website, where you can learn more about Bun and its features (including all the benchmark data captured in this issue), and here is the link.
  • Bun 1.1
    17 projects | news.ycombinator.com | 1 Apr 2024
    Looks like it, it seems the 2% are mostly odd platform specific issues that the authors' did not deem very important (my assumption for the release happening anyway). AFAIK this[1] PR tries to fix them.

    [1]: https://github.com/oven-sh/bun/pull/9729

  • Bun-ify Your Project
    1 project | dev.to | 6 Mar 2024
    Bun has a solution for it. First of all, it already has a list of trusted dependencies. For them, Bun will execute all necessary scripts by default. Otherwise, you can add it to trustedDependecies in your package.json file. In Bun community usage of trustedDependencies is a hot topic. There are several suggestions on how to improve it.
  • I have created a small anti-depression script
    4 projects | dev.to | 5 Mar 2024
    Install Node.js (or Bun, or Deno, or whatever JS runtime you prefer) if it's not there
  • JSR: The JavaScript Registry
    9 projects | news.ycombinator.com | 1 Mar 2024
    I think maybe I was unclear. I'm talking about writing libraries that abstract across these differences and provide a single API, as sibling describes. I already know it's possible. I made a simple filesystem abstraction here[0] and a very simple HTTP library that uses it here[1]. They both work in Node/Deno and the browser. Unfortunately I ran into issues with Bun's slice implementation[2]. But I suspect there's a much better way of detecting and using the different backends.

    [0]: https://github.com/waygate-io/fs-js

    [1]: https://github.com/waygate-io/http-js

    [2]: https://github.com/oven-sh/bun/issues/7057

What are some alternatives?

When comparing workerd and bun you can also consider the following projects:

cloudflare-docs - Cloudflare’s documentation

vite - Next generation frontend tooling. It's fast!

js-compute-runtime - JavaScript SDK and runtime for building Fastly Compute applications

GORM - The fantastic ORM library for Golang, aims to be developer friendly

lagon - Deploy Serverless Functions at the Edge. Current status: Alpha

nvm - Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions

fauna-schema-migrate - The Fauna Schema Migrate tool helps you set up Fauna resources as code and perform schema migrations.

fastify - Fast and low overhead web framework, for Node.js

windmill - Open-source developer platform to turn scripts into workflows and UIs. Fastest workflow engine (5x vs Airflow). Open-source alternative to Airplane and Retool.

go-pg - Golang ORM with focus on PostgreSQL features and performance

go - The Go programming language

deno - A modern runtime for JavaScript and TypeScript.