From 475444b025a5c46d0166d901d71bd1f363f60ca6 Mon Sep 17 00:00:00 2001 From: Atharva Deosthale Date: Tue, 19 May 2026 00:35:03 +0530 Subject: [PATCH 1/3] Announce Bun and Deno build runtimes for Sites --- .optimize-cache.json | 2 + .../+page.markdoc | 51 ++++++++++++++++++ .../changelog/(entries)/2026-05-19.markdoc | 14 +++++ .../announcing-bun-deno-runtimes/cover.avif | Bin 0 -> 9608 bytes .../runtime-bun.avif | Bin 0 -> 32922 bytes 5 files changed, 67 insertions(+) create mode 100644 src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc create mode 100644 src/routes/changelog/(entries)/2026-05-19.markdoc create mode 100644 static/images/blog/announcing-bun-deno-runtimes/cover.avif create mode 100644 static/images/blog/announcing-bun-deno-runtimes/runtime-bun.avif diff --git a/.optimize-cache.json b/.optimize-cache.json index f8b0dcae5d..ecaeb30e0c 100644 --- a/.optimize-cache.json +++ b/.optimize-cache.json @@ -208,6 +208,8 @@ "static/images/blog/announcing-bigint-columns/cover.png": "de0ec57085646427a552f35f0b1ab9a77f9e38b9b20801329ac19bc4bdb069f7", "static/images/blog/announcing-bulk-api/cover.png": "78a0fdf3b54ce8412bf6be1880eb4a42bcac2cb04420045a60bce888c8999c6f", "static/images/blog/announcing-bun-and-dart/bun-and-dart.png": "ea94af00a5c035cefb6474a9061441803db0160b7cc194fb5a71fbe05abf0d12", + "static/images/blog/announcing-bun-deno-runtimes/cover.png": "5c739aa57624b990174943108de2433dd9292798d9e488d01351d5f01eba7800", + "static/images/blog/announcing-bun-deno-runtimes/runtime-bun.png": "3ca689b349526e34386ac8dac25eb3ced20952c4493a85800da848a4e81fe319", "static/images/blog/announcing-cname-flattening/cover.png": "3d79ccb4a7f1bac9e32e0456e31fe09f4475e87368e582591799445a7d4a6f3a", "static/images/blog/announcing-csv-export/cover.png": "a330a6cc463d94635f905f5b48e6ee8b7c1b3f48b1c7ca0fada2e2b6f62b4ccf", "static/images/blog/announcing-csv-imports/cover.png": "47b77b504bdb691afcdf7769b70a5edc610ad525364bff8747d813cc674d549c", diff --git a/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc b/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc new file mode 100644 index 0000000000..2529cf620f --- /dev/null +++ b/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc @@ -0,0 +1,51 @@ +--- +layout: post +title: "Announcing Bun and Deno build runtimes for Appwrite Sites" +description: Appwrite Sites now supports Bun and Deno as build runtimes for every Node-based framework, with Bun 1.0 through 1.3 and Deno 1.40 through 2.6 available in the build runtime dropdown. +date: 2026-05-19 +cover: /images/blog/announcing-bun-deno-runtimes/cover.avif +timeToRead: 4 +author: atharva +category: announcement +featured: false +callToAction: true +--- + +When you deploy a site, the build runtime is the part you rarely think about until it slows you down. Cold installs, slow lockfile resolution, and toolchains that need a long list of flags to behave can quietly add minutes to every deploy and friction to every framework upgrade. + +Today, we are happy to announce that **Bun and Deno are now available as build runtimes for Appwrite Sites**. You can pick any supported version, from **Bun 1.0** up to the latest **Bun 1.3**, and from **Deno 1.40** up to the latest **Deno 2.6**, in the Console build runtime dropdown for any Node-based framework. + +# Why Bun and Deno on Sites + +Sites already supports Node as a build runtime, and Node is going to keep being a great default. Adding Bun and Deno is about giving you a choice that matches how your team actually develops: + +- **Bun is fast where it counts for sites.** Dependency installs, lockfile resolution, and script execution are noticeably quicker than equivalent Node tooling, which makes it well suited to the install and build phase of a deploy. The Bun 1.x release line continues to improve npm compatibility and ships fixes that matter for modern framework toolchains. +- **Deno brings a modern, secure JavaScript runtime.** Recent Deno releases are fully npm compatible, support monorepos, and ship a strong built-in toolchain including a formatter, linter, and test runner. If you already use Deno locally, you can now build your Appwrite Site with the same runtime instead of switching to Node for deploys. +- **You can stay in your stack.** This is not a new framework or a new way to structure your project. The build runtime selector simply tells Appwrite which JavaScript runtime to use when installing dependencies and running your build command. + +# Available versions + +The build runtime dropdown for Node-based Sites frameworks now includes: + +- **Bun**: 1.0, 1.1, 1.2, 1.3 +- **Deno**: 1.40, 1.46, 2.0, 2.5, 2.6 +- **Node**: 14.5, 16.0, 18.0, 19.0, 20.0, 21.0, 22, 23, 24, 25 + +Older Bun and Deno versions are included so that existing projects pinned to a specific runtime can keep deploying without an upgrade step. New sites should pick the latest version on each line, Bun 1.3 or Deno 2.6, unless a project has a reason to stay back. + +# Picking a build runtime in the Console + +The build runtime is configured per site under **Site settings**, in the **Runtime settings** section. Selecting a Bun or Deno version changes which runtime Appwrite uses to install dependencies and run your build command on the next deployment. Your active deployment is not affected until you redeploy. + +![Build runtime selector showing Bun 1.3 selected on an Appwrite Site](/images/blog/announcing-bun-deno-runtimes/runtime-bun.avif) + +# Getting started + +Bun and Deno build runtimes for Sites are **available on Appwrite Cloud today**. + +# More resources + +- [Appwrite Sites documentation](/docs/products/sites) +- [Sites framework support](/docs/products/sites/frameworks) +- [Appwrite Cloud](https://cloud.appwrite.io) +- [Join the Appwrite Community on Discord](https://appwrite.io/discord) diff --git a/src/routes/changelog/(entries)/2026-05-19.markdoc b/src/routes/changelog/(entries)/2026-05-19.markdoc new file mode 100644 index 0000000000..a19590d413 --- /dev/null +++ b/src/routes/changelog/(entries)/2026-05-19.markdoc @@ -0,0 +1,14 @@ +--- +layout: changelog +title: "Bun and Deno are now build runtimes for Sites" +date: 2026-05-19 +cover: /images/blog/announcing-bun-deno-runtimes/cover.avif +--- + +Appwrite Sites now supports **Bun** (1.0, 1.1, 1.2, 1.3) and **Deno** (1.40, 1.46, 2.0, 2.5, 2.6) as build runtimes for every Node-based framework. + +Switch the build runtime per site under **Site settings**, in the **Runtime settings** section. The change applies on the next deployment, your active deployment is not affected until you redeploy. + +{% arrow_link href="/blog/post/announcing-bun-deno-runtimes" %} +Read the announcement +{% /arrow_link %} diff --git a/static/images/blog/announcing-bun-deno-runtimes/cover.avif b/static/images/blog/announcing-bun-deno-runtimes/cover.avif new file mode 100644 index 0000000000000000000000000000000000000000..2c22bf41bea6be07e4fe16d7a8e3259fb2f42e86 GIT binary patch literal 9608 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 literal 0 HcmV?d00001 diff --git a/static/images/blog/announcing-bun-deno-runtimes/runtime-bun.avif b/static/images/blog/announcing-bun-deno-runtimes/runtime-bun.avif new file mode 100644 index 0000000000000000000000000000000000000000..29922f540689da3f1e80289722b8a156232c5b88 GIT binary patch literal 32922 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 Date: Tue, 19 May 2026 00:48:18 +0530 Subject: [PATCH 2/3] Tighten blog intro and call out out-of-the-box support --- .../blog/post/announcing-bun-deno-runtimes/+page.markdoc | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc b/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc index 2529cf620f..e4493900a9 100644 --- a/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc +++ b/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc @@ -11,9 +11,7 @@ featured: false callToAction: true --- -When you deploy a site, the build runtime is the part you rarely think about until it slows you down. Cold installs, slow lockfile resolution, and toolchains that need a long list of flags to behave can quietly add minutes to every deploy and friction to every framework upgrade. - -Today, we are happy to announce that **Bun and Deno are now available as build runtimes for Appwrite Sites**. You can pick any supported version, from **Bun 1.0** up to the latest **Bun 1.3**, and from **Deno 1.40** up to the latest **Deno 2.6**, in the Console build runtime dropdown for any Node-based framework. +Today, we are happy to announce that **Bun and Deno are now available as build runtimes for Appwrite Sites, and they work out of the box with zero configuration**. You can pick any supported version, from **Bun 1.0** up to the latest **Bun 1.3**, and from **Deno 1.40** up to the latest **Deno 2.6**, in the Console build runtime dropdown for any Node-based framework, and your existing site will build without any changes to your project, your `package.json`, or your build command. # Why Bun and Deno on Sites From 5c0c496e7123f211a9818dd00cc0030172ed65c6 Mon Sep 17 00:00:00 2001 From: Atharva Deosthale Date: Tue, 19 May 2026 12:47:03 +0530 Subject: [PATCH 3/3] Address review: rebold lead, drop out-of-the-box claim --- src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc b/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc index e4493900a9..3ac8dc5927 100644 --- a/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc +++ b/src/routes/blog/post/announcing-bun-deno-runtimes/+page.markdoc @@ -11,7 +11,7 @@ featured: false callToAction: true --- -Today, we are happy to announce that **Bun and Deno are now available as build runtimes for Appwrite Sites, and they work out of the box with zero configuration**. You can pick any supported version, from **Bun 1.0** up to the latest **Bun 1.3**, and from **Deno 1.40** up to the latest **Deno 2.6**, in the Console build runtime dropdown for any Node-based framework, and your existing site will build without any changes to your project, your `package.json`, or your build command. +Today, we are happy to announce that **Bun and Deno are now available as build runtimes for Appwrite Sites**. You can pick any supported version, from **Bun 1.0** up to the latest **Bun 1.3**, and from **Deno 1.40** up to the latest **Deno 2.6**, in the Console build runtime dropdown for any Node-based framework, and your existing site will build without any changes to your project, your `package.json`, or your build command. # Why Bun and Deno on Sites