From b073de7abff5fe0f26e67c8a167d6998c856f42f Mon Sep 17 00:00:00 2001 From: Aishwari Pahwa Date: Tue, 9 Jun 2026 12:30:56 +0530 Subject: [PATCH 1/7] latest product update blog --- .optimize-cache.json | 12 ++ bun.lock | 1 + .../+page.markdoc | 170 ++++++++++++++++++ .../Bun_and_Deno.avif | Bin 0 -> 9466 bytes .../Image-6.avif | Bin 0 -> 34521 bytes .../comm_recoggg.avif | Bin 0 -> 18741 bytes .../cover-4.avif | Bin 0 -> 6242 bytes .../cover.avif | Bin 0 -> 30819 bytes .../image 1.avif | Bin 0 -> 19138 bytes .../image 2.avif | Bin 0 -> 5206 bytes .../image 3.avif | Bin 0 -> 5779 bytes .../image 4.avif | Bin 0 -> 8654 bytes .../image 5.avif | Bin 0 -> 10721 bytes .../image 6.avif | Bin 0 -> 13677 bytes .../image.avif | Bin 0 -> 43523 bytes 15 files changed, 183 insertions(+) create mode 100644 src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover-4.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 1.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 2.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 3.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 4.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 5.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 6.avif create mode 100644 static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image.avif diff --git a/.optimize-cache.json b/.optimize-cache.json index d37f4a84ad..fe3b3fee28 100644 --- a/.optimize-cache.json +++ b/.optimize-cache.json @@ -826,6 +826,18 @@ "static/images/blog/master-prompt-engineering-tools/promptappgpt.png": "4b9c9b8a3b89f62b172d554e349049b3bde46464bc2d11791917997ea16dd03f", "static/images/blog/master-prompt-engineering-tools/promptlayer.png": "f864a8b06d97e3f46b831791762c1cd34a48d24a1d9d6c2259db1cdea9e36aea", "static/images/blog/master-prompt-engineering-tools/promptmetheus.png": "db2dba37f7437a4e640cf6d99d1a7bfa0205a012ee4af7e94359c631f66256ea", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.png": "fb464e4ec0de83c6201ef573af3670d7eefe65cc25107f32355617562f1f6652", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.png": "8d283036fed6936412dc93d2e3989c27ba4ad9c1324b87669d832b29f26d13ee", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover-4.png": "ebb9101583ca85e7c2fcbfbebb6eeb46cb6ce0673b4bfc643fcd5dd373954317", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover.png": "252d887977dbae1d4b5b0869b6177a94062d419b9a31b9348e74f4eede49ffea", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 1.png": "9f6741620b5255b9adba09b66a867254079f082e53932691d41fabc786ee771f", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 2.png": "260c9d69eebcf828ccc209995ab9ba2300bd2f450f8bbefca07cbf3ac103974e", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 3.png": "4498be8798d7a4a150156a56c89ccde7088bf49ac038188fe5a1c1ff04f78874", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 4.png": "a0be93d4870a8237ce55a531f5ea592041fa0dee32a9853d842d16e39b78611d", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 5.png": "15b9cdc16b16a3412458abde886e2dbf60753bc8e82d6fc1d0a5e08ca1f14e7e", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 6.png": "41e154c52c8d8cd1321515f5d27eadb4b06ce6ae801e01ba02ed0d86eb5a0ea8", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.png": "03c9902c84508c940a14713a6bdf73545e2286faa5375e68e0fb426e9571287c", + "static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image.png": "726a0a1bf2571bb9fd707d714ebc99d931a332ad63b78b888563499b071157e0", "static/images/blog/memberships-privacy-announcement/cover.png": "db8bc0f478655e59c9773447cb844b9c9bcdecc0fbe018ac0dbc099454866b9d", "static/images/blog/message-overview.png": "2239fd7c47124ac0f154d4569727215a9bec485fcbffedcc012d8883929d968b", "static/images/blog/messaging-announcement.png": "aeb5d1cc4182d96d0466f85b051c8c77f0a2610d5c7debb9fc735211ce491b3f", diff --git a/bun.lock b/bun.lock index 0c4e45012d..afcc17f4f5 100644 --- a/bun.lock +++ b/bun.lock @@ -1,5 +1,6 @@ { "lockfileVersion": 1, + "configVersion": 0, "workspaces": { "": { "name": "appwrite-website", diff --git a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc new file mode 100644 index 0000000000..8365d91e73 --- /dev/null +++ b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc @@ -0,0 +1,170 @@ +--- +layout: post +title: "May product update: Presences API, Rust runtime, 7x faster Storage uploads, and more" +description: Get a full recap of everything shipped across Appwrite in May, including Presences API, Rust runtime, 7x faster Storage uploads, database improvements, Auth email policies, deployment updates, and AI tooling. +date: 2026-06-09 +cover: /images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover.avif +timeToRead: 5 +author: aishwari +category: product +featured: false +faqs: + - question: What is Appwrite Presences API used for? + answer: The Presences API lets developers track short-lived user activity states such as online, away, typing, editing, or viewing. It can be used to build online indicators, typing states, collaborative editors, multiplayer features, live dashboards, and activity feeds. + - question: Does Appwrite support Rust functions? + answer: Yes. Appwrite Functions now supports Rust as a first-class runtime. Developers can write and deploy backend functions in Rust and use them for workloads such as webhook verification, image processing, payment flows, and data transformation. + - question: How fast are Appwrite Storage uploads now? + answer: Appwrite SDKs now support parallel chunk uploads for Storage. In a Node SDK benchmark, a 1.28 GB file upload improved from 4 minutes 44 seconds to under 40 seconds, reaching a 7.10x improvement with no API changes needed. + - question: Are Appwrite database relationships production-ready? + answer: Yes. Database relationships are officially out of beta and production-ready across Appwrite Cloud and self-hosted deployments. They help developers model connected data, filter across related records, and load related data more reliably. + - question: Does Appwrite support OpenAI Codex? + answer: Yes. The Appwrite plugin for OpenAI Codex includes the Appwrite Docs MCP server and agent skills for the Appwrite CLI, major SDKs, and deployment workflows for Sites and Functions. +--- +Welcome back to the product update. + +May was packed with releases across Appwrite. We shipped new tools for realtime collaboration, faster file uploads, better deployment workflows, new runtimes, Auth controls, and database improvements to help you build faster and scale with more confidence. + +Here is a quick overview of what we shipped: + +* Presences API for online, typing, and activity states +* Rust runtime for Appwrite Functions +* Database relationships are officially out of beta +* BigInt columns for Appwrite Databases +* Up to 7x faster Storage uploads with parallel chunks +* Git deployment triggers for Functions and Sites +* Deployment retention for Functions and Sites +* Email policies for Appwrite Auth +* Bun and Deno build runtimes for Sites +* Dart 3.12 for Functions and Flutter 3.44 for Sites +* Appwrite plugin for OpenAI Codex + +Let's dive in. + +![Image-6.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.avif) + +# Track who is online, typing, and active with the Presences API + +Appwrite now includes a Presences API for short-lived user statuses like online, away, typing, editing, or viewing. + +You can use it to build online indicators, typing states, multiplayer presence, collaborative editors, live dashboards, and activity feeds. + +[Read the announcement](https://appwrite.io/blog/post/announcing-presences-api) + +![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image.avif) + +# Introducing the Rust runtime for Appwrite Functions + +Appwrite Functions now supports Rust as a first-class runtime. + +You can write and deploy functions in Rust, pair them with the official Appwrite Rust SDK, and use them for performance-sensitive backend workloads like webhook verification, image processing, payment flows, and data transformation. + +[Read the announcement](https://appwrite.io/blog/post/announcing-rust-runtime) + +![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%201.png) + +# Database relationships are officially out of beta + +Database relationships in Appwrite are now production-ready across Appwrite Cloud and self-hosted deployments. + +You can model connected data more easily, filter across related records, and build apps with more reliable relationship loading and improved performance. + +[Read the announcement](https://appwrite.io/blog/post/relationships-are-out-of-beta) + +![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%202.png) + +# Introducing BigInt columns + +Appwrite Databases now supports 64-bit signed integers with the new BigInt column type. + +BigInt is useful for large counters, external IDs, high-resolution timestamps, financial values, and any data that needs integer precision without floating-point rounding. + +[Read the announcement](https://appwrite.io/blog/post/announcing-bigint-columns) + +![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%203.png) + +# Up to 7x faster Storage uploads with parallel chunks + +Appwrite SDKs now upload Storage file chunks in parallel. + +In our Node SDK benchmark, a 1.28 GB file upload dropped from 4 minutes 44 seconds to under 40 seconds. That is a 7.10x improvement, with no API changes needed. + +[Read the announcement](https://appwrite.io/blog/post/faster-storage-uploads-parallel-chunks) + +![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%204.png) + +# Git deployment triggers for Functions and Sites + +Git deployment triggers give you more control over which changes create automatic deployments. + +Use branch filters for production, staging, and preview workflows, or path filters so each Function or Site only deploys when relevant files change. + +[Read more](https://appwrite.io/blog/post/announcing-git-deployment-triggers) + +![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%205.png) + +# Deployment retention for Functions and Sites + +Functions and Sites now support deployment retention. + +You can choose how long Appwrite keeps non-active deployments before deleting them automatically. Active deployments are never deleted. + +[Read the announcement](https://appwrite.io/blog/post/announcing-deployment-retention) + +![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%206.png) + +# Email policies for Appwrite Auth + +Appwrite Auth now supports email policies. + +You can block free providers, aliased emails, disposable inboxes, or enforce provider-specific domains for user creation and email updates. + +[Read more](https://appwrite.io/blog/post/announcing-email-policies) + +[https://appwrite.io/blog/post/announcing-email-policies](https://appwrite.io/blog/post/announcing-email-policies) + +![Bun and Deno.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.avif) + +# Bun and Deno build runtimes for Sites + +Appwrite Sites now supports Bun and Deno as build runtimes for Node-based frameworks. + +You can switch the build runtime per Site from Runtime settings and apply the change on the next deployment. + +[Read the announcement](https://appwrite.io/blog/post/announcing-bun-deno-runtimes) + +![cover-4.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover-4.avif) + +# Dart 3.12 for Functions and Flutter 3.44 for Sites + +Appwrite now supports Dart 3.12 as a Functions runtime and Flutter 3.44 as a build runtime for Sites. + +Flutter teams can now build mobile apps, web apps, and backend functions with a more consistent Dart-based workflow. + +[Read the announcement](https://appwrite.io/blog/post/announcing-dart-flutter-runtimes) + +[codex cover.avif](May%20product%20update%20Presences%20API,%20Rust%20runtime,%207x/codex_cover.avif) + +# Appwrite plugin for OpenAI Codex + +The Appwrite plugin is now available for OpenAI Codex. + +It includes the Appwrite Docs MCP server and agent skills for the Appwrite CLI, major SDKs, and deployment workflows for Sites and Functions. + +[Learn more](https://appwrite.io/blog/post/announcing-appwrite-codex-plugin) + +![comm recoggg.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.avif) + +# Community Recognitions + +# Engineering Resources + +* [3 things you can build with the Rust runtime](https://appwrite.io/blog/post/3-things-you-can-build-with-rust-runtime) +* [Building a Snapchat clone with Presences and Realtime](https://appwrite.io/blog/post/building-snapchat-clone-with-presences-and-realtime) +* [Anthropic just launched Claude Opus 4.8 with Fast Mode and dynamic workflows](https://appwrite.io/blog/post/anthropic-just-launched-claude-opus-48-with-fast-mode-and-dynamic-workflows) +* [Kimi K2.6 lands on Appwrite Arena: the May 2026 leaderboard update](https://appwrite.io/blog/post/kimi-k2-6-arena-leaderboard-refresh) + +# What's to come + +We are continuing to improve Appwrite across realtime collaboration, deployments, performance, databases, Auth, and AI-assisted workflows. + +Follow us on [X](https://x.com/appwrite) and check our [Changelog](https://appwrite.io/changelog) regularly, as we will release more information in the coming weeks. \ No newline at end of file diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.avif new file mode 100644 index 0000000000000000000000000000000000000000..76b6e17bf074e54b0fd9f89cd26ce59e6033bee9 GIT binary patch literal 9466 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 E0GVsK)c^nh literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.avif new file mode 100644 index 0000000000000000000000000000000000000000..202d8b797e88dbd921e97ad9cd2672ec558343df GIT binary patch literal 34521 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 CHu>NH literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.avif new file mode 100644 index 0000000000000000000000000000000000000000..df349c7aa5a26b28f8837ab2e67591cc8a45489f GIT binary patch literal 18741 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 Ty=;c?2jkc8J(DYnclQ1THm4zW literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover-4.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover-4.avif new file mode 100644 index 0000000000000000000000000000000000000000..ded6ae6676b373e81c542c8fa9f72f13b3b36e2e GIT binary patch literal 6242 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 literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 1.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 1.avif new file mode 100644 index 0000000000000000000000000000000000000000..117083343a01d3fad0fb5fe6edaa689736edd454 GIT binary patch literal 19138 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 jOf74x%rW6Td2zbnB` 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 K5;+sm^9$e-E$D9m literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 2.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 2.avif new file mode 100644 index 0000000000000000000000000000000000000000..e8f6341fc3ac50bb56dab53c8eecdbe31c6a87f0 GIT binary patch literal 5206 zcmZu#byQT}79P4Jq&t3e3P?yZba%@j4MWTf-6bK6Qc6i9ASEd&NSA~T4I>QT&>#p% zhY$7r*8At}weF7Z+uyoppLN%|XB_|l!07B71hex8I|J^_6YMPVJNE?J-PIT{PbXiy z-}s%exjK4y|4jh^7}&x0-~8W50t5Sc{wXl-ycpO6>hQZ#Q3PNDej@;kw7(GmAa}UK z?u_E>Uj*>vu6zUrL;ft|4@-4dIQ?n6Q``9qi~Lsn54>ak1#7`DZ`d6P2g4kock!N` zzld@a=N~O4*aznHTL}Q*+&!3I?i?8m90>l6VBzEA--W;ZIE=rcyD9#17{8fEc7B1% zzhOUbh_oln$>onzl6C+)z@&YGe0-feeWdStz#d>b?;vSA518wp{bB;cJpUwj(!1%g zqA;-lnAkCxIB|CXJ=ojn@0fS5yAyl-*`T{2$wxdL?R?1rgoILVE;o6-nDoS~qLUoz zsseu&Z-RkZ++0`Ih=>5O?uQBx{(wsCwG}3sn@zUd-mo~(X{&84O7a-Q?1vA}QV6kP z>6J=vPV*h5VI$)mn!lyS(!jZi30Q0@8eWPyxo+;#OV%ho;eu8ox9dLePcXRQ8F{I8 zKt9Vm^-K(}m!CN8TxSuo1$REPh{*(A4$sXbT605aCoi>zQ$Bp5lN~a8YcPPSeweK7 zRnIuw^N+aA@F}gU?>=co>HW;qBbQ_HIm&VcM~ViWQwc|#{1ctZ`_CB4V_DCzK`By zAw}-h0+}O%W5O@PTx(_v6brIec-2x^;$FlORSFEAm$-1g}xys{4 zqKc?#zM*1>IwR!daw2o-EEV0#Rhqzs;&i-7_`!;r2t9+8Ok;jT@b6UAA-Gqvy zs*kdlvkJw}C@;*NcN|X@tG}qZv#Djp$U)|%#1}kTE=GJf7;{EekuZI^=2a>oJfpiulfjRbE}hC$|H}VG_b8zA?=FTkvd$Z`sB;GVm3#B z;%O0KD=2oD1Rd`)kDK13WLK4(g0uW|k*rEa!%S$6-0wBqaZ+^Vm&@*4S!n=>tOjRs z^XDlbbpK5kNAZxXtCTnv1yi)R(IHf<^T+n~hgT4S^;d@-7j03UdXx$x;=)3j-jN=B zh~qs;^zoO5F8#J*{ht+NI})EKn|>_!jKvptxRlEwG#D~p2K)$q{X$!CDfKy)g$><0 zI8L;tf@<_fgVxAC=9<)MjKKbOhRBOqpd|{{EpN~%PFTr+!@{$K(%pW-9}ozoynN*A zn_JH5P_Eo3oEJ6pN)Bjw8)%{RUT{?U@id!WRnj%k$nOn`*gu4vY|CuwS)94OZ)Rb4 zlX~DeZXS+d)YU;XP5CrckxtU84f_`dJ^?1o`#K*j35&^a3~egW4ih_C{KwF!q+}_) zn0M|0;z8kQ!jfYIhfh9qy}FhTAb_o?Gad74hKx7ubQU6qj(C3k(|Y552AuXwJ{q9L zhH??6+Gzo6N>F?u!$VXIpbQvDCysV18X?cb6jio>MZ23mFpa8{OL;$Jv#M3;?t<=* zg!_kXn%!s*ihzpdY3OVkXdb*!9zE7!kl-(Qvwk^=+MIzHQCGZ{oEb~=TDE?BwT{hk zICYNgtjLz;YzXW1IX{CUEa^foH#4i%XuAG&=Z{ zql=Yj@1aiy|d7q^HpU`*g6KCsF z?(@?t&(&h7-OT;v40q z&BfOOlbnYB+erL~iRN^2Q42zBXXieO<+vj9b*T5!J#L2h))#d;{-G2>C!b3YJCsP@ zUHaKXroEDD<6tX`Vmv-!2+%edYndost3DrO%q4e^^Yn)Q_*3U)CrT5WW*N2um_C@7 zA%zt(z#9a(0uJPgao+o1#H9a&`IQGH*A5OJPaOvdiw!93nc0$lELEnLSipcNKIKT5 zI*LgWHv!rzZ6B+0t7KGQN>tE;V%yw4hJK>)Jkgt?R`Si3Rj0xjHAL zj!#s+!2=b>NMZp*1s9E$$FaLjFTV>yW$`UbSgKq#n6b-I$G{K7-#6oTadnsMF-*?x z3wps1&k}?+*m|t(=UdD%9DC*|t9P)MV%N;m`4xl4SpAVgEt_W(&E~+Tk2Y1DXVEO> z#gyaUs?KJLPV4Pz-jTMZNT&kFAMUl5^n~Y?QiN0KquQb^>CsQEfA;hOEoMZ~gxmgc)&kN2IuCD?uqW`Dw~KWEk>DoaUc9VOZe z&I2DL9mJHC@(T02hiba-k+3lVGd`Jw+Bv^!QgllWqid%UDPJ9c7BUp0O!~ICOjNR^ z$VxQw{ht$^xt&>RFNLj=Gi0FL^3~P>IM~baeqh4`SsWJ6a)V8d=z9wd%85!+4>^AX zrS`8@IBCE%Kg3}D!hQbc-7K*^c@Xx=ge<$-<6RxLH4Lodko|A80tSQi0s6S+F>r^e zj-q)r!~Rm$t}AvdAyP4WQS0p8EiTG4956zjT@YiF#K8D8ln0!t`H7+fa5F9 zvb@(pgg>kiP7~i?ju*F(@ClhscB!3Xn`dmWAhl{ z!bt21!8Toi3kw7`UV5fvf>xmr=z$TyUz1C}kt^o=%f>uf#cU5-^*6HEf#G6(T@QLO z>aDlx;-w2ajMn8H@=|n=R zsTA#FPX0cA`-$o~uKcz)~wD5jk<#J3*qF|DBmdF?hsyaR&|?ibU#Eqq>SdN>JA2K%tgTfNrbX0y8s|l4be3f=;Y;xmU#W)MPobQQ06pgXi+Q0MFWsrymy-R!10|{KH?q z9_!9#zcxrX1~T=f+r%FD-xxqk$kQ2{dktx-pu+)~wINwpUTS!6IcC}2H(sPGu!H@h zNlZ<1>$0zqw_{)kTD@Vk5pyEY6>yo7;n1A|Vzpd<|*~;#b>3cu^F{_Z0?H+CV z{BOeAMH?p%MVA8-@ZdLcIRxEjX>+1{wu+SRb1HoM4M^5`AxZxBzHvb$_yll+XRb+5 z>%o4s$;Z#hpvbXRr~E{>IpJ32knY(czQh%Hw;|xar)cr{s{~*A*WYt1qYJx~KO89v z%4Ht#aVX_n%G%_ue!0Jf;F&`BTu=)`xp3Q+sfbbiH$LNf+w89Hu8M}f3KAwgq|GMBPsfj4>a5m659ug4WW$id z{&SitZOkr@z#69k6fD)RKYW|NAz0J@r@QU>)xhfYU#v6}%wTBmc4$>7ED`(t?}}Zhlk_?TP-pZo|IQCZ%4- z^~P6Wf9FS;zNeYtPfjS)OA(75Ga;C7XFuBF`zyv_fq?<&+c>O4Qr;k;_U7-bW15P( z?I|PiJPwQ7qQYnKR|D7jkKk;{uU>4Em``K3DexuO%bCK3vb;%{Vju)Y2uGq?eZ)ta z7#B;D+)wnw9i%e(d}IUff>%c!dZ|h>9(Ou_aHk7(7~V8(hrbY2-9uJdtNUe!Ej9<` z{gTTFv@UKWYGJgWdR3s185Z*KA5$-+88%*sR&4l$Y=NraO#61-z6!U7k1?V;|0X|u ztSWZUMvJcr6Apa7wfdsZeZ>ncjwj~0I!!QHvl_3v-pd?9Of9819Ur^xeRd$I>z7FN z?rAQ!=_T>-y&82k0;Tyl0nFc@%*#zqgXe1$aiE3z$h4f(!HY}GJv&32uVP`*#OwB- z?0oc$4TA$1iIa;Y}tap*M7hF|xI`-42@(I1^o^mv75_6KkP*V3#X*=gL z{UX9HKA*7XX_&>RXyt3Eji0%pz2w4X7e^{HdZV3;l@f@0EZTkDXSP%}k}Vw*& z@D`n7Vq6OhiDdQgHjE7e0-jw)R*_8Sn3l2Btrs6G2k*u zw3>LlaNZ_ zf5dxomQe2yJJnYhJJeQp;-*lR!76#3M!3s*MXO+xNnHVoN z`DKsJYC?*5{G5ztVxT@E>mVgSh9{~?Qem@L_%o%`Sb|0njI*|c2c_$u=Qrv~@%5mC zxLT?{lGgAIT%Q_)I@Hv5ZQ)l$)HB-cqZimqZAEX(1Ja3JX)QhU9$_ZKzxSlARi11y z#DfD(leG#+M3cqxjzK{6TB%u%pfF9v?~L?ilzaB9`h?iKhLH#~lgax9C)?IXx6_I) zL)bDsgG8p;A4moIDDOdNg79V9J@n8qTDA&dZpy=qD#+ujsXeW_HH_Ej5j^Qi=J{@d z#+`+d#F}C}HclO3nF>9o*-#QXqtYNrHk8vIR220rNi%h|k%=TbFRfG+8|iXJG~?0v zOS-a&d9WKpn*#vkLL7x_e{{PQb>4L_-Jw8K$|{>+Fntep|}aRdB@f(Rn$*N`^q(PSNc_sJF=cKKnJ_T@+`T%*c{&qBj47K zy-v2X^s^n4j(!oqAoosvLqy6d9E562YRNLT$;R`)iF10@YU8`9U3ZX?u8hfL$~M;0!uO* zDOiLMxJIXPR{%9B?I%@*}09s2YHCaF`{}pBxS|xvMcya0@4sKlq(J zvNpGK_$LJbP%ty6fAfDM5enu6|65?(d48B3((F$qD+Ry={6PR1asNaBfFk1#yR!%U z{~`dRyHW@SL;U@XzwG_H!s2h+o!Z2Oo9B<>f8ZVSFZcz9azNdYAuyB~@-7mZxbVpM zF#pw3z#LH)f0O_K_T7g$a_2};Fjv?g1c--+cNhNY$EN)Q-A(Zihw+CIGI4g5`2#yU zAVlCO3#-2lDq;pRLy0)LIXYRu9YyYXV0JJQ2R9KDJCya``=W!P;D3`l>D}}|A50(s z6Uz@1JKzqWhB;XLGv?iKcVfH07j!q|eO$P?i4z$B1QNEfy3TCJq`n8{jbxLT;{ZtG z5UK-o0EBv{11%6zyLuPQQUgN`t}USp>VjY>CE<@Wm(L=|h0B{9sd2dL8xjq2F4`#!nUfrPVKeYGWF z4l9fxF4Lf@W(A)4!B6;-{q$CYfm_2{=h#e*?NQKP&rI zPQ<-3Gj!o_(hl)NQweXj}Isq?tCeDhj1cO%$^^*CSIkDIag&4?fKu!mn8t5(@i*ZmSpdZ=!$ zPwS&cYp&n!&y0f38VW(it;Pc?!7ryE2{u^|1WXNFfWn0oHSZP*Bott+uPCBNhS$0+W^4_W zkEPgETbIWI`){EDF6F9~og*LWj}O_dLpEA7;#R35PGrO{N!}I~K!|%9qDy?7a*Y+D zOIYy&fA@L`Z8Ti^E_UFK#qd0}Wyc5CyL@@Ihj6;Kat$wRJq!&s?#FXfB`&cXFnZoc z*P8di`~KA&e>s#=eAlo;$HXuyC|0{QJ1TH0)n2GX|2Kfukn`!b22xnLedlvbv9q@) zYmt-&w=K#&HSn2Q*U)`v+C?>@FMepx0vWfrUIWEpG1?rl^-!k#WYEW088ttVM{iQd z&c}3GBi8^>9Bt@o1k*CEc*LwdRer<`DD>0dS2E!gYmm#)yl^5uxt}xfkU~c zbw=;~(->t6jiN6a>T;P%J16T%@Q;k#=h}s?k>s!H+)QQW_%L^eC~gu@^>Ez=gr~a= z4NSk98)!5n#~dpSMn#W-;Etv=pxr?#Oz#~fgOWoZyJTg(l zaA8Y?>H^r~$5QzZmhKJ%YgnZ-Dd+ll*yafE)(&cb?@f5|GX-@xv=ux*7TU8~CC(G3 zeav2NlLys}uv^Cfe6ud#q?5qwI5wm{jj!xospzGX%Nd=Y-u;>ra$qTTbO z8?&W(1QasjikFh$3}m^JWL!7Qa3$5uF@@uL4&<=BYil9{UHf&aFXsHBY;Zo7i@F9~ zZv4V8MUIF&HN$sLnIp&&weU!iUOo#~6mZ6p=;OUQX)-PWjiguk%HfvV_{ z6zGOt1D1BPr_xvxW39!)BzmUO6){DDCY0b)`Tp!ZF7Mrn`-Wt>{HpFT4lzt6%HE6!t@p21irDsR z3k3a%$?Pn2eSb1Cty9B2ht6r`kFb+3Oq|6yvSJXP8XZ!nJWnM+d|X0#)8Dn1FBPy@ ze}27)Bq~XyMqvIV>bo}tZjU`(?=Q^|c{CP|n;$=PzB2LCZaKvar9xk$R8`W)N4z!J zfu#Wv(%}3`B|7dqIG`huj~~M5MOeIlqC7x84eb76b@p9RQQeI%bsVQ)ZVfo*8)uCd z(gzW*=h>d2bo6m;+Hb?5zXnJ6UI%C|yPd7pt~L?5(&h4pEK`JTr0BwbH5@dD^ndAn z2pNsn%cn!AaPk0$af4M^)z=TP&bH?7-PbHi_w?8mq z_^(o92MG)gn42nr%X-uws30`N9t%qvBp=0F-05G*wlb2@a8^z|%}Mc$b2G{|)(!15 z!daTNb<@^>5Wq)PIuW&U(rF~e)5sa&UYlHr=ZV$+2UV<7KT5bq*fA2{_z$>Y^=g&8 z>&hpcP`s(3FRYblq|ImD!t-Z13v-K~cNUt)aLEOZ-FEYhB)_#f zuhmN#AYO||8|^oWDI=U3BE5MceCaL{#e*=(xo%ywD{xy}pHVifP}#jS9UeIC3hF7+ zDRxupU^I%imOJ0S7q4vUb|s5`EK%|3H2Ji+=Ux9X+Q0I*$V}ywx5mXlf!9j~`9d*= z8KDBX&mz1CV-~IfVPPF*m0wQ;!ym3n4N{2L2W-kXlNgVP_HE7a?BmtEDM!ZVJ`hb$ zD?0*H8`E?^%K#XWK}t)xq;nvr7ayiFC9B0N(`u53_US@@>zW#??V(IG_G(UeMee z=%%K3Dj`yzNM$Ii*W3wvSt~B4z_=)o77OdMJAoAZy+B zQ=$Li_M_*SWJmj`*%+Ql{r!vAPbnWxHeee_fHi7{_>-juAjndPn^CxX*=Be2NA;m` z;L@_0_v{X8dNm~D+<&#(u@bkBGf_dlxgn&d67VA?ER+UQ0H}()4FV_@?HPv(6ukG^ zg%S!oOeASO4!VlGVp5ht3h{Jmk$&%D82i9!2pFsPP{2@X4D<32Bwq~ILq6Nfy^7bN zzl1CC*Q|*-8iIE!+!hRJF)MUFeC$3er@^EUT^G?z#cFD*ZDIS=KuKQrcCahfU3;Uu znU^(!&66RF@R5l27tn9gC4@$lg`2CN3x}x{IQX(kFy%(b)6&sfhoF`xF$vwr- z90ON%jvKcpnlpPG$4J2OV|c4yFRKnWAb>wF*33yg>|*)S7$)md0Rhac`v#tEty z=^^-x*0kN`^y+~5IXX$n%P5hFD9H`R3Y^Fvn)^}Oc4LZFLGHe6`C9qsMQd(e$d_-~ zH9Q#!G+T*WejMFv!s2K3n!yOvsHzNrawHzIn?MR$8;HPPKM>9u+vA*NBBt1gpV~?o zrAeb@e+Q^reYXWuPGP;6bIQx%J!ZE{vLhAK1fEU2<%7z-x*+C12|b~Mj+eGBXV
    ZF;b1}ZIP`XT> z2)eAF=;4{l>zBHnWGknNoMng!H@{dLfp5-#BA6+1QJU}TRA1Lr3jUIR0a!=Z>CH{S z%E?}8g0Ruseqc<-MtrriF8&S{f`#N!d6n?wosW<~c|8L_62b))mAo;oS2*&18BW+mkI#^QEu%-qA`bUsbE1hlVEG6j7^R zibGCYyzduxmily-maF>jIV7)iPYBY2{A62OC&{(_Y9{k$+|l7}v_-b<{Ngp{?vhF{uZ1OT}j zM)z^}Xr@Bi+h;h^PJ~@#TXadbz_Y1?Z2=NE)3W_8KU_8jnr+hQ3z4-!665?!yWBeO zX1LU89^_%MZMBUSE(N@^N_8SE(5PlPq42=5M8*Z*7-eGLejj+F_MB9m#O%o$Ysv5M zd=%F7TufynSwhNio19?F!g!9(ljXE|c4^g*vpARKy^wn(FkE)pcWLkJXt4P|ss@C@ z`D%?9e8#LxPyE6UyjED_{dk5@BH%?*Jh|_{Fk6#ZxC3!%)Yg-pJTd$d|H&g{nYoIM zSv$_Iw;r{v-h1j)8qBV%-DR5VZ!GRE<_F0YE8IO)7~mv~M5q&SR z&|#HmKH!sD5S^G(JI9arhABsuR$>-~q>8`!@b)Z$Q5?SCIFl@GdDby(IYBh1#n8CU z>7QexS0OO3!8R#Yz><~|e#BO@0wfrDogevf-bzOK_b!<%`F_3;0;}Na1?dCYoKM}} z5{bP1U}@%&XXg9@9TdKy*4v|2Np#9{14b8w!y6AOX%3J;aXw>@Iu7h}5OltM6#mWZ{8N2Q^3g?t_OP^~xLQ zr!QmVQ~~pJSK2m&m60q?y6-X+XZoTOP*>Lwaq`q?*B@viz>|%5-M+#2G+%v z815svugdoxI+WH`=%@ivg9()GB?t0h$0==(I|S*k*Y*;NLO_wpMZWR6;Q?nEc0xs* zpo#N_@VtrS&CxV=s9A5jiApZzcGZI?reE=@#aO>Iu!=_#Q!gc{XR=IG9!F_echcgV zqK~n67M1(Ur`kg~qj!jYW2!bmuw!3Li5DlFTS>7avp)bU9uJI#h8IjiV@z8bt+F1? z8tE>1lhaK{zC`2%rFG3fiudjNQ% zy;U7_F`&=dnwS|)dz94I8_ujzZ*`=;+XlhJ(o3+XcnP!D^uu8DD#aG><{NK#nl=ZD zrIBNa#8G1qrE zjrF}TQ9TuQ2t;agFF3x}K-y1!52f!m;?&p1Ar_2`1d5ek^_uGF!#MD6ISA*ya8G5p zSxyOXh`(VdUm*sbte~tJ1eg*vLMy|6Ci1=};P4mBSCqQhAfzVkA3kn8i_QkWXY;eE z5R2%O1eDJONpF8_7Qv2phng*A1*9arVXVm`G^0=3Qm`K16TOxtWPN#KWL_5~cV9kb zv!J1N#$wu9Fo|Uw%A7vzI&;>mrrVp%-N4Td9{}$GhbM=uN^)M?Yhw~~z3IwI=4rc_ zR7>YVGKzbW?|knozgkIl2=JOq48kpay#dmAYt<1grGB(Yk`0I>l#B30kkub z;Ji(Zo$*`x$|B(Te20U#rrGS-r#O*|| z5~yINIKy~>hD-Y26h6dIvcI<&$PfsXzf$r5fN32%kyA!CyOvjVH?;miJ#XGq&2)Z$ zs5&e}Q8rRdC+&4i+!TBs`=HJt!2ze)$nlvbQhWwG;Zf|@;8~~f+i`;_^uAQkA(cd! zNukB77X>sM31q3aT!JWP8;f~Tl1@hrm>Wzr3%v)R=pKKFZrp4X8)ff%;~aofU1td4 zxIvI4t8JZ!YtD6N(#WKG#<)JW#n61X6aC7rHO&19fo-7k6>~>d#Ky~((5MXW*#++8 zeA;9|OP(Y_w%ufFA9XSlsRLkD` zpB@N3(&I~7p7MtH83LhQ+C$N~JD}qA&o=gOXp+b-zFJjQc!oU2fpl}{yiUi?EY4VU zd%|Z}m1cRJ!rgunm+J3+GK2Re9iR*VPzT_V36qZ;6O0~u|Gy09A9nHoasR{q+w>oS Cb<6Mo literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 4.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 4.avif new file mode 100644 index 0000000000000000000000000000000000000000..4d827d7fe65b31c60ded3624e68244d9a8cceef9 GIT binary patch literal 8654 zcmYLuV|1P0)Aost#%|0;C$?>!u+fQ5Y&KTYut|e9XxP}cZKGjh+j`Re-v4@Mt$T3I zTzl`?Yk#^20059!xOzF7xI-)eZ(;|rVE^meK}_CaC`UVUSChZ^n^0Jp**gE{0sxK> zuN57 zUnT$m_x3?gz9~#ch$rMP0)vQ%_-6jAha>q5y>;|#^jq^DZUK{MR#WLO3xdxf6VM#*qCUKVg!G4p8`qm+wm^{({aoRgyKJ-FoG0$f`VXQBlDYu&NZ+=s2Awz9a$ifhAWq_SU%aI-^9Qw6X!5sCc7T)_@ zB^;>A%v_6;7h(sSPcy{EwLVy-xN?+U3ou)abl=4yTcRnk zSJPf3s`!K##E-jl57-WJzxIz4p(3)$4}g>W{dmTo++5VXgbD6YD6c}5%ArD$ijlXLK*vO1 z$l_#3jfUlw-!X;RtdK8maz2>YrGIy)KyK%@VHA=d7?^qxT2po8L-0D~!-*YHAd5Zk zzDS_zSJ>dhSM&I25RXb!=yaoUX~D)m(1h%jsHkZp&pgoRJHKq@xS9pueH$4pPlNGX zOON}}UuN9CBENHQFT2ZQ(BnvT3blE;A2R90M# z{DG~+y_%z1u76!P%X7)Hx4vin;w@5V@%=aJ=O@0u?%oZ~Ncth-jTNA5J7WGa+npRVQrmS`54 zy7`Ii?h%J%j_VupnOQU9W#ZI;v`B9WndTYXzJ(VIAx{SawR9hjp?3nPH9E>GIK@Y_ zBvqfhmiuZ;ZZ$gW_r9nOPTzcE(W@m>BRBN;@W5$ZD%a9I|4g}bP)9*QQe*w~aW7jo zxGx8)LX`(+Hm{iQ;?-MbE7w75M@Au>Z}&KH8Cpy>*j@d~ez?}Swa->^#=~v?=XHl&S@64 zJ0G0V>BTi#s8Tf=ZO7lf3kl`td2+^eqwTEDtYN$nzl%9{N<0e?OG4r}mxdYdlAX<9 z>A~;~H+8sS^#5^gn z68ZJ09{SK*apvwsXR7+AUlFNEBb4Vm7QrkFk`ZJM2kOJ}9P77}$FTOim?&jVT`syD z$9vo_Q6FWXQ=3twM5Wi?SXT~l%c-!YhQoAR?>fX`WHP_|w!oF@JRKB%y| z4duny-dd&lI14BmyQGleNu!gZIcH25Yv{Txelv&5*^|YECGG_=GYxZQ`ev6j}`BUn@K(|KPVVWt4M3XNLNJmutu&gAhFe=n>b!J z#@)lX2hDGH`s#Ub;ROq2=lyP*pgkqf$Dc8cw|ifpG!6b}Yho;^@m0!LfBsgyg^P4E zoN>uc^Hf9Q{TPn!ABoc)W2K$>w2Sq){;W0n0Hf^zPx#$#Ff;R& z1~s!Nig8De&Vdek6NW!NhIkc`KiE|2QT~Q+azXTlk+L~C zz^LeGQzVJ*M`tPllNbyjkR?i#f^< z%r>UtZqi-0C+GtvyMvGDfS+hi15e{vPjoqJ^Ya*}z2a<3mOP0eqs*UCoevC|YAYeT zGb^c+X0{ijQGNb5O#AMR-|&khTQ6d)Gs!mxm{#-SCt( zM2u~e1~<&Sf1)jxlOK_Oyjn#$`Y4si%{S&|EB>yXc1Y@%F+KMBRlNN~i-QXAxBQ{+A}Jpnox!POoA>>jXC5-s4qi3Q_2(8VMVYs)TTn;~SFb?~?< z#iOI)J139qB+vQ)$~U3jd4gnzElb^?4ho!OH_TCg62ReQC~k+ot^;P37N9Z)Ksb*- z>W;;7!!g5_5l*5fZr0CBj;f(Ax3=8$Xa{({q_Gez$?`YX0x1yvqVflKh9K_p!^W*zHz$9b#HKF6v-7fYYgMZsTOCB*t4|(3r9xy)50F zpT22G8sIt}h_#SHuL5`^Z`tXt(jroBe#t)^cxL4gfwRf(u$fN(JODLYVk*|E=E-); zt!TF^u;9OsJ0#zq^uJS;^F0hXsyksMsU|phCjJuMc}eUXII}5yz|Z^PI!as%es86y z+gsx3R$~H}LGx$w*VdHV=#pR$cVrYZM4l;}>>NtOJP_YeuTIk$ncMjmuo1;#?rDxf zZIvn0_1zDkaN8&iDngCLgKB00I*RX!ofudi+lk}OO_X>x;H<%|?yuPGK(4z1@54MKuI# zns|IMz8g=kfX#*MK5tmO+X%*>jtOfji0?Y_N)Ux7ceHc-m` zN*meP+fV%EPaY*3sLAMHUMD;!_ch1(`qDPmvnQR*pep?Fjhza%8uD6KG>(vms1zWxmM-T$gLSe^?;`vv& zkUGV>wOrsuTr3+7-s|(kAb$T{X@H{n`ee~#;jFgy`v;l8?ST9?gq1 zLD5yZmA3f1#|}#*=&%L6Gm|6&Asd6xGr_Q?N~WKNNrlcZespgS3=1Y}iW0~L$=~o6 z1gA3rSFQm&p&Z@}Nq^prXrdleFza83Pz7^qcT`)KJIv7ch9@mRx0$Pp3U(4CZgl#!R_TiiS(Ml7 z0DX4@2bc+_0{<}ZRy1X46vb7=so4&yPIEZ0PzY?jQ2#ugu{NioKtz4ww$0IOc6q9O)QhqObu zv{1%Obw*C25r+HE5imV(tw{@j(OECMx)b>ej7AGm3R%$!rytE_o0f}ypdJ#jOwioL z2J0YY`fk5|63OAfqy8dp7Hb(x{f)j|mxl;JaH-QfoingrcNf3m0YW0k5E_+mQ#CE# z;|J}RBjD%C4WEAtua8VuB_CrdbSnaS)E(eu$xlVru#8N-7%}{M}NjlXZ8DG6`C(zTH#IGkBn(fy{CKPx< zMd^UeD1udWK=~%HkTARnlR&k{RnXb=ga1k}PKfN{TD;>ZO2^PT8w|bS#g6nc7>mC8 zDih;Ta4n(>f@-FR<0jLYa@F;zno1Iz(lzM8{D9w$e)+>iait1Y$CHAtJ-Jh3O{|ls~Jz>hgodFf2A#7OQJ_x zFp1;nXPO^T-v&{xo9PD+ulYhAAU(1V0E*$3py_XG3EUsn@x9S;v&ks~wcyTm%l^#f zzsJLZW6`C!v@12R74@zf1~M~BI1_`q+5M*J;#hs>0uh}%Rf=ZTGhp@dV^%E6*+$Y5 zbbldzv|SNp09?TbL`69MbgQ!QAL{Q61{-B}w{u^&H=E^*aUji@`AND*>R^l>Nzeo& zK(DTliikYM@lO^+r}L@87DDUaeTZxPi1_q#*Sua$FKe>?fkYyC^l5#&Z9h^J;Ca(I?HYB9J*xrCo^*DzXY`VacD?}IWT*jiseT7rinR^RF+j0j!>iR!@3_O)IUa$} zJr(;q%N=xx0kj{l>As5MO&$5k4P1TKkuHjfohJ5V$cJR?HK7DwTrqbJ++bk%s}f_|Ik4wCr>PZbW6Mg>F@*6alSx=p6Tk})(YWRb ztu7tkri-bI`V-H@mHSOj|2t&d&zPap7JMI`1FQ5ks!bx44C|7I>$l=~jhx{bvTl;! z=O;=_kS$4I{=8)oK7vz83mSRS78B|~((}Q}JjX*Q?EQ_!LvW@m!u_{ph8;ykWbChY z;5a3LuERY+Zn$rKK8>77IaD2x#?%8}#S8T=; z)`Vv>Agb?eq9=B$K&F(_i#cWYnRo`;6Atn*W`v*W7mEnyltlaO)cjK{Qf!6uAgYu7 z7L~BY*kdTTRxCZ(7}eHtV`53%0bfUor?R&=Csw)$_srb7`_T;jsRJV?F_?|e6{irF z$N(%bf>XZ;_4VX4Zlr2G9O>l|_YffzZ>b+jvrF!d9}cEAb~qdHQ?C{!d;zKHbNfhp zD)cEvyy{`mskw`p1-0jx<-)^*`s%aFq5`NzjN##ijNjw1lVTGKc;&i`8FJDxZEB-j zzi>1`@ZSFu%ZVS;y$e;ws4odz`ls}gZ`T}YAN3SDNaV-*rQym-c8e<2-;03wDGQpQ zJ@?p6K;s-Mfi56m3~pj&;Yv*@4inYSQ>3+Jv{=(Bb8J(Jjf`iyT!Kv(I1#)J!wt|z z%Ofc2Rt+XQ?bae}0q^kAe&XG+QzOgWF^3Tm)@y+=McE4~ob4}I(^0v*MtJIQ2_gj#9XBo%S-3kJRf?Eo~b`*QMBg}n&i3-t@#{V(k{%{vI>d! zZtM)GC1XW)()UNwe38W|?>Y&vB36?RK;<*|EZb~wKecJ7lRYct#Hp%2D_#7;G@?eD zi{GZbz$R#yUOd%hLtENH=zKz#Yx3O-n;2!m;JH7c#Rn;Xw%|nTE>quXX>QtnESzgFjC*4?L;x z3y)P2q{NJOw3IikT)g+IGyaD^nW!}GAhQEW+CwfePzfh?+j4wDWoxW!4)GaK#6Qol zKksYdT=v6L@kuyZ@S0W;%hSNQb=*+1j_1YVBI%&8<$9&brt?MkD#skeurgbhQ5IuN zMtJ4P)zd@7LxcJ8QCqRFCJ{n{@#lmQbM!nt(2i7eum<#Nr^>~iBr(8+wL94R_bmOR zq;x*Ln4`Ru8ZVcD<|wrbZL^eMnh);=sgt*G;D*$wFe>1-5+~POo3Z%-EzP^d5Har! zG~UCIW8?%R+*eU`6qpeCS0^>FiuA<1&J(Q|&M*a1I|ZJ$ib8XF3ur>(yZ@NanX|Q} zqR13)QS0q%x0usAA8GfL_>q!1HfTZ<;osB_3o8S)A=+&4oOFOBaXXy)68o7hHP-ri zIKz0IV7*bEKH#H&{cs~4%(@0YY@2!MB$|tc!QC=uf}kp#bPM&z(TPh4?CK_k_uz+M z;u_70{697LGnEE<8Vd8tN^pBvufN?Q6T3DAnzchKp;r}j@^~*`k;|EI}Q0DNTQ~;WeB(^bvo8{v5v2=iOs%YcT74FTM<^uh68GlgyB|80Up5d zw0a1!F8sY1!%f=79^3>cauu!E2{o~$e-y5rU%rGc3trTprhYdc4+0gxh_#JK*~FPzXT_33SQo(NR%q>-W$dOGr4rb7 zPflAgQROmVmJl%*b;e~wh`T{l9M2Ko zv|FU1YIQtYHH!`*se)jToR8D-`brHL>-61^M*hfhDw44A1agw{1<6zr#u0tid~v*a zRy~7#GKN8A3}p&M zRhR$JI8V#i;Hy~tGrZ!yvVC~w(Cxj)$A;fTCZWyv@;jFva(P->e1gk&me-@ZY0w2% z2Hvf(@p>1kKe)hF&gHMKsAUBNrq0UF#Qf(wCTMg)IuZ1Rdr$uUB84e!H=2fW)5tQ3 z{09MiO-hW|+t#wC#^NyV?HSvl1i#x-jZhO=t+W%;EINE?IZnZ9q9?|oiwi?)T>;nx z8b>4M=4nZt3{w`J^+(xbb&JPJDkrTnYd9%=R8#vj5LRE#8@YbA5;rI^nv0d;9S|9l zKgv|)yo}!QTwG5bR|mr=BKW!m^v=W(xeiKIvMmBdOZ~z^Z0MTmo_U#Z z<*r)mK#OL8b2_5 zoR;G7sh4ga6k@8Q&S_=%ZT2xhFQ<693Guks2(+dt0EvOOfzg!84r}fv*NKb+ds+1@ zZ9?cRPIRQivCQLIWfqVVW^`V2(S#&*x~=YoPqVl6;)R^fV(YMFk@O|U=@T<3Rid-MhPwTD z+-I9gBUew5j`e*aZdvSlE{jINei}}}%Ao}FrejCbp?wdZB`YU8(_lR`ge!&{011YmjzW&BDKZnG~ zqG@4>j~OkvJ1)S1GpK=ITq+7sHoE29qjQ#D*^5dJTeH-nU6_P=yN%%yAiQ(r^GR$U z*m%uhK4CtD&emRcEyQ~qmh6GtbNHF_MaA*zjM}O;ht!I~-pQQJ;OAiN^jkiuOeRP! zjZ)!KN_KnBHoQH13Xukmt?KGzD4GVWR2t^E@8?%q_sFDcKIGwXIi&c@J(^%H!kT42 zVT@pUi%%uwPNSjfiNuTGfz>;J}rR_4lE@ zDDk+AO;Uu{Nk^6IG0WFvQNZ2=>F(adwuIdbCC}v<>7EAT z>g3gvBRSgl5xYNX7IAga5BU3TdYTe{5v$a=Wlp z$^TbXsoc4^P4WSF!%z+Ng{k%F-12(^#{LJT925 uqxkC{oYhBtv0Su0oKs>AT;&ivuKlP|S5fr;Xw9_+ML{!1NCE$EmHz`_Cs*SD literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 5.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 5.avif new file mode 100644 index 0000000000000000000000000000000000000000..b36dcdc34c1b216ab5d5e6389efdef7e2660159b GIT binary patch literal 10721 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 G)Bga&B`X&I literal 0 HcmV?d00001 diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 6.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 6.avif new file mode 100644 index 0000000000000000000000000000000000000000..1281a675280dc08de28d5c77899a73013e6bfd59 GIT binary patch literal 13677 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 Date: Tue, 9 Jun 2026 13:42:44 +0530 Subject: [PATCH 2/7] Apply suggestion from @greptile-apps[bot] Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- .../+page.markdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc index 8365d91e73..f4ed0e5908 100644 --- a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc +++ b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc @@ -1,6 +1,6 @@ --- layout: post -title: "May product update: Presences API, Rust runtime, 7x faster Storage uploads, and more" +title: "May product update: Presences API, Rust runtime, 7x faster Storage uploads, and more" description: Get a full recap of everything shipped across Appwrite in May, including Presences API, Rust runtime, 7x faster Storage uploads, database improvements, Auth email policies, deployment updates, and AI tooling. date: 2026-06-09 cover: /images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover.avif From 95eae3e3765fb17ca95e54be46d847fc2f9d55d8 Mon Sep 17 00:00:00 2001 From: Aishwari Pahwa Date: Tue, 9 Jun 2026 13:42:58 +0530 Subject: [PATCH 3/7] Apply suggestion from @greptile-apps[bot] Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- .../+page.markdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc index f4ed0e5908..130134714b 100644 --- a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc +++ b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc @@ -60,7 +60,7 @@ You can write and deploy functions in Rust, pair them with the official Appwrite [Read the announcement](https://appwrite.io/blog/post/announcing-rust-runtime) -![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%201.png) +![image 1](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%201.avif) # Database relationships are officially out of beta From 6f4808e64d723983529a585fdeba2adf3eea0f0b Mon Sep 17 00:00:00 2001 From: Aishwari Pahwa Date: Tue, 9 Jun 2026 13:43:06 +0530 Subject: [PATCH 4/7] Apply suggestion from @greptile-apps[bot] Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- .../+page.markdoc | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc index 130134714b..2539c131cb 100644 --- a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc +++ b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc @@ -120,8 +120,6 @@ You can block free providers, aliased emails, disposable inboxes, or enforce pro [Read more](https://appwrite.io/blog/post/announcing-email-policies) -[https://appwrite.io/blog/post/announcing-email-policies](https://appwrite.io/blog/post/announcing-email-policies) - ![Bun and Deno.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.avif) # Bun and Deno build runtimes for Sites From c13254811855ceef60fd612d9ca9f934686d6f16 Mon Sep 17 00:00:00 2001 From: Aishwari Pahwa Date: Thu, 11 Jun 2026 13:12:49 +0530 Subject: [PATCH 5/7] Update +page.markdoc --- .../+page.markdoc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc index 2539c131cb..a1a22ef412 100644 --- a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc +++ b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc @@ -154,6 +154,10 @@ It includes the Appwrite Docs MCP server and agent skills for the Appwrite CLI, # Community Recognitions +We are excited to feature Ibaraki Douji as part of our monthly Community Recognitions for May 2026. Ibaraki Douji built a full, up-to-date [Helm chart for self-hosting Appwrite on Kubernetes](https://gitlab.ibaraki.app/helm/appwrite) that deploys the entire stack, including the API, Console, Realtime, background workers, schedulers, database, Redis, and Kubernetes-native ingress with TLS. It lets you scale each component independently, run clean upgrades, and fits GitOps workflows with tools like ArgoCD and Flux. It has been running in production since Appwrite 1.7.4. + +If you would like to participate in next month's Community Recognitions, [join our Discord server](https://appwrite.io/discord) and showcase your project. + # Engineering Resources * [3 things you can build with the Rust runtime](https://appwrite.io/blog/post/3-things-you-can-build-with-rust-runtime) @@ -165,4 +169,4 @@ It includes the Appwrite Docs MCP server and agent skills for the Appwrite CLI, We are continuing to improve Appwrite across realtime collaboration, deployments, performance, databases, Auth, and AI-assisted workflows. -Follow us on [X](https://x.com/appwrite) and check our [Changelog](https://appwrite.io/changelog) regularly, as we will release more information in the coming weeks. \ No newline at end of file +Follow us on [X](https://x.com/appwrite) and check our [Changelog](https://appwrite.io/changelog) regularly, as we will release more information in the coming weeks. From a261903730b3cefb2df8ee13c429789d43e680f5 Mon Sep 17 00:00:00 2001 From: Aishwari Pahwa Date: Thu, 11 Jun 2026 13:14:39 +0530 Subject: [PATCH 6/7] Update +page.markdoc --- .../+page.markdoc | 1 - 1 file changed, 1 deletion(-) diff --git a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc index a1a22ef412..ee2dd33e5d 100644 --- a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc +++ b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc @@ -162,7 +162,6 @@ If you would like to participate in next month's Community Recognitions, [join o * [3 things you can build with the Rust runtime](https://appwrite.io/blog/post/3-things-you-can-build-with-rust-runtime) * [Building a Snapchat clone with Presences and Realtime](https://appwrite.io/blog/post/building-snapchat-clone-with-presences-and-realtime) -* [Anthropic just launched Claude Opus 4.8 with Fast Mode and dynamic workflows](https://appwrite.io/blog/post/anthropic-just-launched-claude-opus-48-with-fast-mode-and-dynamic-workflows) * [Kimi K2.6 lands on Appwrite Arena: the May 2026 leaderboard update](https://appwrite.io/blog/post/kimi-k2-6-arena-leaderboard-refresh) # What's to come From fd3692b2568bd25a23c6ca76751e2c531ecf3f22 Mon Sep 17 00:00:00 2001 From: Atharva Deosthale Date: Thu, 11 Jun 2026 15:59:48 +0530 Subject: [PATCH 7/7] fix: correct image names and placement in May product update blog --- .../+page.markdoc | 82 +++++++++--------- .../{image 2.avif => bigint.avif} | Bin ...coggg.avif => community-recognitions.avif} | Bin ...image 4.avif => deployment-retention.avif} | Bin ...{image 5.avif => deployment-triggers.avif} | Bin .../{image 6.avif => email-policies.avif} | Bin .../{Image-6.avif => presences.avif} | Bin .../{image 1.avif => relationships.avif} | Bin .../{image.avif => rust-runtime.avif} | Bin .../{image 3.avif => storage.avif} | Bin 10 files changed, 41 insertions(+), 41 deletions(-) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{image 2.avif => bigint.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{comm_recoggg.avif => community-recognitions.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{image 4.avif => deployment-retention.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{image 5.avif => deployment-triggers.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{image 6.avif => email-policies.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{Image-6.avif => presences.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{image 1.avif => relationships.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{image.avif => rust-runtime.avif} (100%) rename static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/{image 3.avif => storage.avif} (100%) diff --git a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc index ee2dd33e5d..ef4915589c 100644 --- a/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc +++ b/src/routes/blog/post/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/+page.markdoc @@ -2,7 +2,7 @@ layout: post title: "May product update: Presences API, Rust runtime, 7x faster Storage uploads, and more" description: Get a full recap of everything shipped across Appwrite in May, including Presences API, Rust runtime, 7x faster Storage uploads, database improvements, Auth email policies, deployment updates, and AI tooling. -date: 2026-06-09 +date: 2026-06-11 cover: /images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover.avif timeToRead: 5 author: aishwari @@ -40,132 +40,132 @@ Here is a quick overview of what we shipped: Let's dive in. -![Image-6.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.avif) - # Track who is online, typing, and active with the Presences API +![Presences API](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/presences.avif) + Appwrite now includes a Presences API for short-lived user statuses like online, away, typing, editing, or viewing. You can use it to build online indicators, typing states, multiplayer presence, collaborative editors, live dashboards, and activity feeds. -[Read the announcement](https://appwrite.io/blog/post/announcing-presences-api) - -![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image.avif) +[Read the announcement](/blog/post/announcing-presences-api) # Introducing the Rust runtime for Appwrite Functions +![Rust runtime](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/rust-runtime.avif) + Appwrite Functions now supports Rust as a first-class runtime. You can write and deploy functions in Rust, pair them with the official Appwrite Rust SDK, and use them for performance-sensitive backend workloads like webhook verification, image processing, payment flows, and data transformation. -[Read the announcement](https://appwrite.io/blog/post/announcing-rust-runtime) - -![image 1](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%201.avif) +[Read the announcement](/blog/post/announcing-rust-runtime) # Database relationships are officially out of beta +![Database relationships](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/relationships.avif) + Database relationships in Appwrite are now production-ready across Appwrite Cloud and self-hosted deployments. You can model connected data more easily, filter across related records, and build apps with more reliable relationship loading and improved performance. -[Read the announcement](https://appwrite.io/blog/post/relationships-are-out-of-beta) - -![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%202.png) +[Read the announcement](/blog/post/relationships-are-out-of-beta) # Introducing BigInt columns +![BigInt columns](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/bigint.avif) + Appwrite Databases now supports 64-bit signed integers with the new BigInt column type. BigInt is useful for large counters, external IDs, high-resolution timestamps, financial values, and any data that needs integer precision without floating-point rounding. -[Read the announcement](https://appwrite.io/blog/post/announcing-bigint-columns) - -![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%203.png) +[Read the announcement](/blog/post/announcing-bigint-columns) # Up to 7x faster Storage uploads with parallel chunks +![Faster Storage uploads](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/storage.avif) + Appwrite SDKs now upload Storage file chunks in parallel. In our Node SDK benchmark, a 1.28 GB file upload dropped from 4 minutes 44 seconds to under 40 seconds. That is a 7.10x improvement, with no API changes needed. -[Read the announcement](https://appwrite.io/blog/post/faster-storage-uploads-parallel-chunks) - -![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%204.png) +[Read the announcement](/blog/post/faster-storage-uploads-parallel-chunks) # Git deployment triggers for Functions and Sites +![Git deployment triggers](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/deployment-triggers.avif) + Git deployment triggers give you more control over which changes create automatic deployments. Use branch filters for production, staging, and preview workflows, or path filters so each Function or Site only deploys when relevant files change. -[Read more](https://appwrite.io/blog/post/announcing-git-deployment-triggers) - -![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%205.png) +[Read more](/blog/post/announcing-git-deployment-triggers) # Deployment retention for Functions and Sites +![Deployment retention](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/deployment-retention.avif) + Functions and Sites now support deployment retention. You can choose how long Appwrite keeps non-active deployments before deleting them automatically. Active deployments are never deleted. -[Read the announcement](https://appwrite.io/blog/post/announcing-deployment-retention) - -![image.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image%206.png) +[Read the announcement](/blog/post/announcing-deployment-retention) # Email policies for Appwrite Auth +![Email policies](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/email-policies.avif) + Appwrite Auth now supports email policies. You can block free providers, aliased emails, disposable inboxes, or enforce provider-specific domains for user creation and email updates. -[Read more](https://appwrite.io/blog/post/announcing-email-policies) - -![Bun and Deno.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.avif) +[Read more](/blog/post/announcing-email-policies) # Bun and Deno build runtimes for Sites +![Bun and Deno build runtimes](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Bun_and_Deno.avif) + Appwrite Sites now supports Bun and Deno as build runtimes for Node-based frameworks. You can switch the build runtime per Site from Runtime settings and apply the change on the next deployment. -[Read the announcement](https://appwrite.io/blog/post/announcing-bun-deno-runtimes) - -![cover-4.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover-4.avif) +[Read the announcement](/blog/post/announcing-bun-deno-runtimes) # Dart 3.12 for Functions and Flutter 3.44 for Sites +![Dart and Flutter runtimes](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/cover-4.avif) + Appwrite now supports Dart 3.12 as a Functions runtime and Flutter 3.44 as a build runtime for Sites. Flutter teams can now build mobile apps, web apps, and backend functions with a more consistent Dart-based workflow. -[Read the announcement](https://appwrite.io/blog/post/announcing-dart-flutter-runtimes) - -[codex cover.avif](May%20product%20update%20Presences%20API,%20Rust%20runtime,%207x/codex_cover.avif) +[Read the announcement](/blog/post/announcing-dart-flutter-runtimes) # Appwrite plugin for OpenAI Codex +![Appwrite plugin for OpenAI Codex](/images/blog/announcing-appwrite-codex-plugin/cover.avif) + The Appwrite plugin is now available for OpenAI Codex. It includes the Appwrite Docs MCP server and agent skills for the Appwrite CLI, major SDKs, and deployment workflows for Sites and Functions. -[Learn more](https://appwrite.io/blog/post/announcing-appwrite-codex-plugin) - -![comm recoggg.png](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.avif) +[Learn more](/blog/post/announcing-appwrite-codex-plugin) # Community Recognitions -We are excited to feature Ibaraki Douji as part of our monthly Community Recognitions for May 2026. Ibaraki Douji built a full, up-to-date [Helm chart for self-hosting Appwrite on Kubernetes](https://gitlab.ibaraki.app/helm/appwrite) that deploys the entire stack, including the API, Console, Realtime, background workers, schedulers, database, Redis, and Kubernetes-native ingress with TLS. It lets you scale each component independently, run clean upgrades, and fits GitOps workflows with tools like ArgoCD and Flux. It has been running in production since Appwrite 1.7.4. +![Community Recognitions](/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/community-recognitions.avif) + +We are excited to feature Ibaraki Douji as part of our monthly Community Recognitions for May 2026. Ibaraki Douji built a full, up-to-date [Helm chart for self-hosting Appwrite on Kubernetes](https://gitlab.ibaraki.app/helm/appwrite) that deploys the entire stack, including the API, Console, Realtime, background workers, schedulers, database, Redis, and Kubernetes-native ingress with TLS. It lets you scale each component independently, run clean upgrades, and fits GitOps workflows with tools like ArgoCD and Flux. It has been running in production since Appwrite 1.7.4. Keep in mind that this is a community-backed project and is not maintained by Appwrite. If you would like to participate in next month's Community Recognitions, [join our Discord server](https://appwrite.io/discord) and showcase your project. # Engineering Resources -* [3 things you can build with the Rust runtime](https://appwrite.io/blog/post/3-things-you-can-build-with-rust-runtime) -* [Building a Snapchat clone with Presences and Realtime](https://appwrite.io/blog/post/building-snapchat-clone-with-presences-and-realtime) -* [Kimi K2.6 lands on Appwrite Arena: the May 2026 leaderboard update](https://appwrite.io/blog/post/kimi-k2-6-arena-leaderboard-refresh) +* [3 things you can build with the Rust runtime](/blog/post/3-things-you-can-build-with-rust-runtime) +* [Building a Snapchat clone with Presences and Realtime](/blog/post/building-snapchat-clone-with-presences-and-realtime) +* [Kimi K2.6 lands on Appwrite Arena: the May 2026 leaderboard update](/blog/post/kimi-k2-6-arena-leaderboard-refresh) # What's to come We are continuing to improve Appwrite across realtime collaboration, deployments, performance, databases, Auth, and AI-assisted workflows. -Follow us on [X](https://x.com/appwrite) and check our [Changelog](https://appwrite.io/changelog) regularly, as we will release more information in the coming weeks. +Follow us on [X](https://x.com/appwrite) and check our [Changelog](/changelog) regularly, as we will release more information in the coming weeks. diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 2.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/bigint.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 2.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/bigint.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/community-recognitions.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/comm_recoggg.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/community-recognitions.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 4.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/deployment-retention.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 4.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/deployment-retention.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 5.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/deployment-triggers.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 5.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/deployment-triggers.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 6.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/email-policies.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 6.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/email-policies.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/presences.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/Image-6.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/presences.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 1.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/relationships.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 1.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/relationships.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/rust-runtime.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/rust-runtime.avif diff --git a/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 3.avif b/static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/storage.avif similarity index 100% rename from static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/image 3.avif rename to static/images/blog/may-product-update-presences-api-rust-runtime-7x-faster-storage-uploads-and-more/storage.avif