Skip to content

Add build cache blog post#3049

Open
atharvadeosthale wants to merge 3 commits into
mainfrom
build-cache
Open

Add build cache blog post#3049
atharvadeosthale wants to merge 3 commits into
mainfrom
build-cache

Conversation

@atharvadeosthale

Copy link
Copy Markdown
Member

Adds the engineering blog post for the new build cache, covering how it works and measured pnpm/bun install improvements.
Cover image and final author to be added before publishing.

@appwrite

appwrite Bot commented Jun 12, 2026

Copy link
Copy Markdown

Appwrite Website

Project ID: 69d7efb00023389e8d27

Sites (1)
Site Status Logs Preview QR
 website
69d7f2670014e24571ca
Ready Ready View Logs Preview URL QR Code

Website (appwrite/website)

Project ID: 684969cb000a2f6c0a02

Sites (1)
Site Status Logs Preview QR
 website
68496a17000f03d62013
Queued Queued View Logs Preview URL QR Code


Tip

Function builds can take up to 45 minutes before timing out

@greptile-apps

greptile-apps Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds a new engineering blog post explaining Appwrite's build cache feature, including how SquashFS is used to pack dependency stores and measured install-time improvements (~4× speedup for pnpm and bun).

  • A new +page.markdoc with frontmatter, body copy, benchmark numbers, and FAQs is added under src/routes/blog/post/inside-appwrites-new-build-cache/.
  • A benchmark chart (install-times.avif) is added, but the corresponding .optimize-cache.json entry was written with a .png extension instead of .avif, leaving the actual file untracked by the image optimization tooling.
  • The cover image referenced in the frontmatter (cover.png) has not been committed yet; the PR description notes it will be added before publishing.

Confidence Score: 3/5

The blog post content and image are ready, but the optimize-cache entry points to a file that doesn't exist, and the cover image is still missing — merging as-is would leave both issues in main.

The cache mismatch means the .avif benchmark image is untracked by the image-optimization tooling and a non-existent .png path is registered instead. Additionally, the cover image file is absent, so the post would render without a cover if published in its current state.

.optimize-cache.json needs the extension corrected from .png to .avif; static/images/blog/inside-appwrites-new-build-cache/cover.png (or .avif) still needs to be added.

Important Files Changed

Filename Overview
.optimize-cache.json Cache entry added for install-times.png but the actual image in the repo is install-times.avif — the tracked path will never match an existing file.
src/routes/blog/post/inside-appwrites-new-build-cache/+page.markdoc New engineering blog post for the build cache feature; inline image reference uses .avif (matches added file), cover image placeholder is acknowledged as missing before publish.
static/images/blog/inside-appwrites-new-build-cache/install-times.avif New AVIF image for the install-times benchmark chart; file itself looks fine.

Reviews (1): Last reviewed commit: "Bold install numbers in intro" | Re-trigger Greptile

Comment thread .optimize-cache.json
"static/images/blog/init-recap-august/newcli.png": "d25380abdf625bddd5ee4c87ba2eafce19a075fa7cac7a47aa9d5b50302d3ea0",
"static/images/blog/init-recap-august/product-update.png": "5e4f3c3bc35310dfd17d8623d8f6b803be1d74f696c340e1a843a39e99103690",
"static/images/blog/init-recap-august/release.png": "8adb887f7db7cf6d72e1a828a3568036420e27210bae506261353ea9e120938c",
"static/images/blog/inside-appwrites-new-build-cache/install-times.png": "8aad23378d7dca56267ceda0ecdbeccc18879045f6dbba674bc473b363000c88",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 The cache entry references install-times.png, but the file actually added to the repository is install-times.avif. The .png path does not exist, so the optimization tooling will either produce a cache miss or track a ghost entry, and the real .avif file stays untracked.

Suggested change
"static/images/blog/inside-appwrites-new-build-cache/install-times.png": "8aad23378d7dca56267ceda0ecdbeccc18879045f6dbba674bc473b363000c88",
"static/images/blog/inside-appwrites-new-build-cache/install-times.avif": "8aad23378d7dca56267ceda0ecdbeccc18879045f6dbba674bc473b363000c88",

description: A deep dive into how Appwrite now caches your dependencies between builds, and what it means for your deployment times.
date: 2026-06-12
cover: /images/blog/inside-appwrites-new-build-cache/cover.png
timeToRead: 7

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Missing cover image before publish
The frontmatter declares cover: /images/blog/inside-appwrites-new-build-cache/cover.png, but no cover.png file exists in static/images/blog/inside-appwrites-new-build-cache/. The PR description acknowledges this ("Cover image… to be added before publishing"), but it's worth making sure the file is committed and that its extension matches — other recent posts (e.g. the Sites announcement) use .avif for cover images.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant