# Appwrite Blog

Product updates, tutorials, and stories from Appwrite.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Build a WhatsApp AI agent with Appwrite Functions and TablesDB

DevFeed: [Build a WhatsApp AI agent with Appwrite Functions and TablesDB](<https://devfeed.tech/articles/build-a-whatsapp-ai-agent-with-appwrite-functions-and-tablesdb-31445.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/whatsapp-ai-agent-appwrite-functions>)

Author: Atharva Deosthale

Published: 2026-09-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [AI Agent](<https://devfeed.tech/topics/ai-agent.md>), [Messaging](<https://devfeed.tech/topics/messaging.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [API](<https://devfeed.tech/topics/api.md>), [Database](<https://devfeed.tech/topics/database.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-agent](<https://devfeed.tech/tags/ai-agent.md>), [api](<https://devfeed.tech/tags/api.md>), [app](<https://devfeed.tech/tags/app.md>), [build](<https://devfeed.tech/tags/build.md>), [data](<https://devfeed.tech/tags/data.md>), [database](<https://devfeed.tech/tags/database.md>), [messages](<https://devfeed.tech/tags/messages.md>), [messaging](<https://devfeed.tech/tags/messaging.md>), [meta](<https://devfeed.tech/tags/meta.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [support](<https://devfeed.tech/tags/support.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [whatsapp](<https://devfeed.tech/tags/whatsapp.md>)

### AI overview

This tutorial shows how to build a WhatsApp AI support agent with Appwrite Functions and TablesDB. One function receives and stores incoming messages, while a second function retrieves conversation history, uses an order-lookup tool, sends replies through Meta's WhatsApp Cloud API, and stores the responses. Conversation summaries help keep long threads within the model's token budget.

### Source excerpt

Turn a WhatsApp number into an AI support agent. Two Appwrite Functions receive messages and reply, TablesDB keeps the conversation history, and a compaction step keeps the context small.

## Support the well-known change password URL with Appwrite Auth

DevFeed: [Support the well-known change password URL with Appwrite Auth](<https://devfeed.tech/articles/support-the-well-known-change-password-url-with-appwrite-auth-31444.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/well-known-change-password-url>)

Author: Atharva Deosthale

Published: 2026-09-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [passwords](<https://devfeed.tech/topics/passwords.md>), [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Application Security](<https://devfeed.tech/topics/application-security.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [W3C](<https://devfeed.tech/topics/w3c.md>)

Tags: [bitwarden](<https://devfeed.tech/tags/bitwarden.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [passwords](<https://devfeed.tech/tags/passwords.md>), [security](<https://devfeed.tech/tags/security.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [w3c](<https://devfeed.tech/tags/w3c.md>)

### AI overview

This tutorial shows how to support the well-known change password URL in a TanStack Start app using Appwrite Auth. It explains the redirect, the change-password form for signed-out visitors, autocomplete hints, and deployment to Appwrite Sites.

### Source excerpt

Password managers open /.well-known/change-password when they find a leaked or weak password. Add the redirect and a change password page backed by Appwrite Auth.

## Appwrite Init 2026 recap: Everything we shipped

DevFeed: [Appwrite Init 2026 recap: Everything we shipped](<https://devfeed.tech/articles/appwrite-init-2026-recap-everything-we-shipped-26795.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/appwrite-init-2026-recap>)

Author: Aishwari Pahwa

Published: 2026-09-15T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [releases](<https://devfeed.tech/topics/releases.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>)

Tags: [2](<https://devfeed.tech/tags/2.md>), [firewall](<https://devfeed.tech/tags/firewall.md>), [init](<https://devfeed.tech/tags/init.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [recap](<https://devfeed.tech/tags/recap.md>), [release](<https://devfeed.tech/tags/release.md>), [releases](<https://devfeed.tech/tags/releases.md>), [s3](<https://devfeed.tech/tags/s3.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>)

### AI overview

An Appwrite Init 2026 recap covering five days of launches, including Appwrite 2.0, a redesigned Console, native PostgreSQL, VectorsDB, DocumentsDB, MySQL, S3-compatible Storage, Firewall, OAuth2, and Domains.

### Source excerpt

An Appwrite Init 2026 recap of all five days of launches, from Appwrite 2.0 and native PostgreSQL to VectorsDB, S3 support, Firewall, OAuth2, and Domains.

## Appwrite 2.1 is now available for self-hosting

DevFeed: [Appwrite 2.1 is now available for self-hosting](<https://devfeed.tech/articles/appwrite-2-1-is-now-available-for-self-hosting-17465.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/appwrite-2-1-self-hosted>)

Author: Atharva Deosthale

Published: 2026-09-14T00:00:00Z

Content type: article

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [hosting](<https://devfeed.tech/topics/hosting.md>), [API](<https://devfeed.tech/topics/api.md>), [API keys](<https://devfeed.tech/topics/api-keys.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [Compression](<https://devfeed.tech/topics/compression.md>), [Encryption](<https://devfeed.tech/topics/encryption.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [api-documentation](<https://devfeed.tech/tags/api-documentation.md>), [aws](<https://devfeed.tech/tags/aws.md>), [cli](<https://devfeed.tech/tags/cli.md>), [compression](<https://devfeed.tech/tags/compression.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [hosting](<https://devfeed.tech/tags/hosting.md>), [products](<https://devfeed.tech/tags/products.md>), [s3](<https://devfeed.tech/tags/s3.md>), [self-hosting](<https://devfeed.tech/tags/self-hosting.md>), [sign-in](<https://devfeed.tech/tags/sign-in.md>)

### AI overview

Appwrite 2.1 is available for self-hosted deployments. It adds the S3-compatible Storage API and AutoGravity image previews, along with TikTok and Kakao sign-in and Appwrite Console fixes. The release uses the existing upgrade command and migration process from Appwrite 2.0.

### Source excerpt

Appwrite 2.1 brings the S3 API and AutoGravity to self-hosted instances, adds TikTok and Kakao sign-in, and fixes for Appwrite Console.

## Introducing the Affiliates program

DevFeed: [Introducing the Affiliates program](<https://devfeed.tech/articles/introducing-the-affiliates-program-16489.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/introducing-the-affiliates-program>)

Author: Aishwari Pahwa

Published: 2026-09-11T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [account](<https://devfeed.tech/tags/account.md>), [analytics](<https://devfeed.tech/tags/analytics.md>), [announcements](<https://devfeed.tech/tags/announcements.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [console](<https://devfeed.tech/tags/console.md>), [developers](<https://devfeed.tech/tags/developers.md>), [program](<https://devfeed.tech/tags/program.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>)

### AI overview

Appwrite introduces an Affiliates program that lets developers create invite links, track referrals, and earn $15 in Appwrite Cloud organization credits when referred users upgrade to Pro. The program includes 180-day attribution and is managed in the Appwrite account and Console.

### Source excerpt

Introducing the Affiliates program, a new way to share Appwrite, track referrals, and earn Cloud credits when people you refer upgrade to Pro.

## Build a support chatbot with Appwrite Functions and VectorsDB

DevFeed: [Build a support chatbot with Appwrite Functions and VectorsDB](<https://devfeed.tech/articles/build-a-support-chatbot-with-appwrite-functions-and-vectorsdb-31443.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/build-support-chatbot-vectorsdb>)

Author: Atharva Deosthale

Published: 2026-09-10T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Chat Bot](<https://devfeed.tech/topics/chatbot.md>), [Retrieval-Augmented Generation](<https://devfeed.tech/topics/retrieval-augmented-generation.md>), [Embeddings](<https://devfeed.tech/topics/embeddings.md>), [React](<https://devfeed.tech/topics/react.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [build](<https://devfeed.tech/tags/build.md>), [chat](<https://devfeed.tech/tags/chat.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [embedding](<https://devfeed.tech/tags/embedding.md>), [functions](<https://devfeed.tech/tags/functions.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [rag](<https://devfeed.tech/tags/rag.md>), [react](<https://devfeed.tech/tags/react.md>), [retrieval](<https://devfeed.tech/tags/retrieval.md>), [support](<https://devfeed.tech/tags/support.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

This tutorial builds Harbor Help, a support chatbot for a fictional project-management product. It uses Appwrite VectorsDB to store help-center article embeddings, an Appwrite Function to retrieve relevant excerpts and generate answers through OpenRouter, and Appwrite Sites to host a React interface. The chatbot uses retrieval-augmented generation and can refuse questions outside the help center.

### Source excerpt

Seed a help center, retrieve relevant articles with VectorsDB, and answer customer questions through an Appwrite Function. Deploy the chat interface on Appwrite Sites.

## Automatic image cropping in Appwrite with AutoGravity

DevFeed: [Automatic image cropping in Appwrite with AutoGravity](<https://devfeed.tech/articles/automatic-image-cropping-in-appwrite-with-autogravity-16487.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/introducing-autogravity>)

Author: Torsten Dittmann

Published: 2026-09-10T00:00:00Z

Content type: article

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Computer vision](<https://devfeed.tech/topics/computer-vision.md>), [Code](<https://devfeed.tech/topics/code.md>), [Go](<https://devfeed.tech/topics/go.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [automatic](<https://devfeed.tech/tags/automatic.md>), [computer-vision](<https://devfeed.tech/tags/computer-vision.md>), [go](<https://devfeed.tech/tags/go.md>), [image](<https://devfeed.tech/tags/image.md>), [object-detection](<https://devfeed.tech/tags/object-detection.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [storage](<https://devfeed.tech/tags/storage.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

Appwrite introduces AutoGravity, an open-source Go service that adds automatic image cropping to Appwrite Storage. It uses a model pipeline to identify a focal point and returns normalized coordinates that Appwrite's existing image transformation pipeline uses for cropping. The article explains that transformed images are cached and identifies U²-Net as the main model behind the feature.

### Source excerpt

AutoGravity brings automatic image cropping to Appwrite Storage. Learn how saliency detection and face detection pick the focal point behind gravity=auto.

## How Lorari scaled to 130+ fitness studios solo with Appwrite

DevFeed: [How Lorari scaled to 130+ fitness studios solo with Appwrite](<https://devfeed.tech/articles/how-lorari-scaled-to-130-fitness-studios-solo-with-appwrite-16471.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/customer-story-lorari>)

Author: Aditya Oberai

Published: 2026-09-09T00:00:00Z

Content type: article

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Development](<https://devfeed.tech/topics/development.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>)

Tags: [analytics](<https://devfeed.tech/tags/analytics.md>), [backend](<https://devfeed.tech/tags/backend.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [customer-stories](<https://devfeed.tech/tags/customer-stories.md>), [fitness](<https://devfeed.tech/tags/fitness.md>), [instagram](<https://devfeed.tech/tags/instagram.md>), [payments](<https://devfeed.tech/tags/payments.md>), [software-development](<https://devfeed.tech/tags/software-development.md>), [stripe](<https://devfeed.tech/tags/stripe.md>), [web-app](<https://devfeed.tech/tags/web-app.md>)

### AI overview

A customer story about solo founder Marti Mestre Faus building Lorari on Appwrite Cloud. The platform helps yoga, pilates, and fitness studios manage classes, memberships, payments, events, waitlists, and student bookings; more than 130 studios serving 13,000 students were onboarded in seven months.

### Source excerpt

Learn how solo founder Marti Mestre Faus built Lorari on Appwrite Cloud and onboarded 130+ yoga and pilates studios serving 13,000 students in seven months.

## Use Drizzle ORM with Appwrite Postgres

DevFeed: [Use Drizzle ORM with Appwrite Postgres](<https://devfeed.tech/articles/use-drizzle-orm-with-appwrite-postgres-16474.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/drizzle-orm-appwrite-postgres>)

Author: Atharva Deosthale

Published: 2026-09-08T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Drizzle](<https://devfeed.tech/topics/drizzle.md>), [migration](<https://devfeed.tech/topics/migration.md>), [Object-relational mapping](<https://devfeed.tech/topics/orm.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [SQL](<https://devfeed.tech/topics/sql.md>)

Tags: [data](<https://devfeed.tech/tags/data.md>), [drizzle](<https://devfeed.tech/tags/drizzle.md>), [migration](<https://devfeed.tech/tags/migration.md>), [migrations](<https://devfeed.tech/tags/migrations.md>), [orm](<https://devfeed.tech/tags/orm.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [schema](<https://devfeed.tech/tags/schema.md>), [sql](<https://devfeed.tech/tags/sql.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [typescript](<https://devfeed.tech/tags/typescript.md>)

### AI overview

A tutorial showing how to connect Drizzle ORM to Appwrite Postgres, define tables and queries in TypeScript, generate and apply SQL migrations, seed data, and evolve a schema while preserving existing records.

### Source excerpt

Connect Drizzle ORM to Appwrite Postgres, query data with TypeScript, and apply SQL migrations as your schema changes.

## Use Prisma ORM with Appwrite Postgres

DevFeed: [Use Prisma ORM with Appwrite Postgres](<https://devfeed.tech/articles/use-prisma-orm-with-appwrite-postgres-16503.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/prisma-orm-appwrite-postgres>)

Author: Atharva Deosthale

Published: 2026-09-08T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Prisma](<https://devfeed.tech/topics/prisma.md>), [Object-relational mapping](<https://devfeed.tech/topics/orm.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [migration](<https://devfeed.tech/topics/migration.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>)

Tags: [database](<https://devfeed.tech/tags/database.md>), [migration](<https://devfeed.tech/tags/migration.md>), [migrations](<https://devfeed.tech/tags/migrations.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [prisma](<https://devfeed.tech/tags/prisma.md>), [schema](<https://devfeed.tech/tags/schema.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [typescript](<https://devfeed.tech/tags/typescript.md>)

### AI overview

A practical guide to using Prisma ORM with Appwrite Postgres in a TypeScript project. It covers creating the PostgreSQL database, configuring the connection and TLS settings, defining models, generating and applying migrations, generating Prisma Client, and connecting to the database through a driver adapter.

### Source excerpt

Model your data with Prisma ORM, generate a typed client, and test schema migrations against Appwrite Postgres.

## Introducing worker topologies for self-hosted Appwrite

DevFeed: [Introducing worker topologies for self-hosted Appwrite](<https://devfeed.tech/articles/introducing-worker-topologies-for-self-hosted-appwrite-16446.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-worker-topologies>)

Author: Atharva Deosthale

Published: 2026-09-07T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Coroutines](<https://devfeed.tech/topics/coroutines.md>), [Docker Compose](<https://devfeed.tech/topics/docker-compose.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [compose](<https://devfeed.tech/tags/compose.md>), [container](<https://devfeed.tech/tags/container.md>), [containers](<https://devfeed.tech/tags/containers.md>), [coroutines](<https://devfeed.tech/tags/coroutines.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>)

### AI overview

Appwrite introduces two worker topologies for self-hosted instances. The combined topology is now the default and runs background work in two containers, while the separate topology preserves one container per queue and scheduler for installations needing independent scaling or resource controls.

### Source excerpt

Self-hosted Appwrite now runs all background workers in a single container by default. Learn how the combined topology works and when to scale out with separate workers.

## Appwrite 2.0 is now available for self-hosting

DevFeed: [Appwrite 2.0 is now available for self-hosting](<https://devfeed.tech/articles/appwrite-2-0-is-now-available-for-self-hosting-16450.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/appwrite-2-self-hosted>)

Author: Atharva Deosthale

Published: 2026-09-07T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Containers](<https://devfeed.tech/topics/containers.md>)

Tags: [containers](<https://devfeed.tech/tags/containers.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [products](<https://devfeed.tech/tags/products.md>), [self-hosting](<https://devfeed.tech/tags/self-hosting.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>)

### AI overview

Appwrite 2.0 is available for self-hosting. It introduces a rebuilt Console, PostgreSQL as the default database for new installations, a coroutine-based server engine, and a combined worker topology that reduces the default instance from 33 to 16 containers. Existing installations retain their current database when upgraded.

### Source excerpt

Appwrite 2.0 brings a rebuilt Console, PostgreSQL as the default database, and a combined worker topology that runs your instance on 16 containers instead of 33.

## Introducing Postgres to self-hosted Appwrite

DevFeed: [Introducing Postgres to self-hosted Appwrite](<https://devfeed.tech/articles/introducing-postgres-to-self-hosted-appwrite-16448.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/appwrite-2-0-postgres-by-default>)

Author: Atharva Deosthale

Published: 2026-09-07T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Docker](<https://devfeed.tech/topics/docker.md>)

Tags: [database](<https://devfeed.tech/tags/database.md>), [docker](<https://devfeed.tech/tags/docker.md>), [install](<https://devfeed.tech/tags/install.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [products](<https://devfeed.tech/tags/products.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>)

### AI overview

Appwrite 2.0 makes Postgres the default database for new self-hosted installations. The setup wizard also lets users choose MariaDB or MongoDB. Existing installations keep their current database, and migration to another database is not supported.

### Source excerpt

Appwrite 2.0 runs new self-hosted instances on Postgres by default. Choose Postgres, MariaDB, or MongoDB in the setup wizard when you install.

## Announcing Appwrite Firewall: traffic control for your project

DevFeed: [Announcing Appwrite Firewall: traffic control for your project](<https://devfeed.tech/articles/announcing-appwrite-firewall-traffic-control-for-your-project-16413.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-appwrite-firewall>)

Author: Arnab Chatterjee

Published: 2026-09-04T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [API](<https://devfeed.tech/topics/api.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Back end](<https://devfeed.tech/topics/backend.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [backend](<https://devfeed.tech/tags/backend.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [firewall](<https://devfeed.tech/tags/firewall.md>), [preview](<https://devfeed.tech/tags/preview.md>), [products](<https://devfeed.tech/tags/products.md>), [project](<https://devfeed.tech/tags/project.md>)

### AI overview

Appwrite announces Firewall, a project-level traffic control feature built into Appwrite Cloud. It lets developers define rules for APIs, Functions, and Sites using request conditions such as IP address, path, headers, query parameters, user agent, and location. Rules can allow, deny, challenge, rate-limit, or redirect traffic, with priority ordering and an impact preview before deployment.

### Source excerpt

Appwrite Firewall adds project-level traffic rules to Appwrite Cloud. Deny, bypass, challenge, rate limit, or redirect requests to your API, Functions, and Sites, with an impact preview before every change.

## Turn your app into an MCP server with the Appwrite OAuth2 server

DevFeed: [Turn your app into an MCP server with the Appwrite OAuth2 server](<https://devfeed.tech/articles/turn-your-app-into-an-mcp-server-with-the-appwrite-oauth2-server-16510.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/turn-your-app-into-an-mcp-server>)

Author: Atharva Deosthale

Published: 2026-09-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Databases](<https://devfeed.tech/topics/databases.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-tools](<https://devfeed.tech/tags/ai-tools.md>), [app](<https://devfeed.tech/tags/app.md>), [auth](<https://devfeed.tech/tags/auth.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [browser](<https://devfeed.tech/tags/browser.md>), [claude](<https://devfeed.tech/tags/claude.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [code](<https://devfeed.tech/tags/code.md>), [databases](<https://devfeed.tech/tags/databases.md>), [http](<https://devfeed.tech/tags/http.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [remote-mcp-server](<https://devfeed.tech/tags/remote-mcp-server.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [web](<https://devfeed.tech/tags/web.md>), [web-app](<https://devfeed.tech/tags/web-app.md>)

### AI overview

This tutorial explains how to turn an Appwrite-based application into a remote MCP server. It uses an Appwrite Function, the OAuth2 server included in an Appwrite project, and a consent screen so AI tools such as Claude Code can access and act on behalf of signed-in users.

### Source excerpt

Build a remote MCP server for your product, host it on Appwrite Functions, and let AI tools like Claude Code sign in through the OAuth2 server built into your Appwrite project.

## Build a memory MCP server on Appwrite

DevFeed: [Build a memory MCP server on Appwrite](<https://devfeed.tech/articles/build-a-memory-mcp-server-on-appwrite-16459.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/build-a-memory-mcp-server>)

Author: Atharva Deosthale

Published: 2026-09-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [MCP Server](<https://devfeed.tech/topics/mcp-server.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Embeddings](<https://devfeed.tech/topics/embeddings.md>), [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-assistants](<https://devfeed.tech/tags/ai-assistants.md>), [ai-tools](<https://devfeed.tech/tags/ai-tools.md>), [api](<https://devfeed.tech/tags/api.md>), [claude](<https://devfeed.tech/tags/claude.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [embeddings](<https://devfeed.tech/tags/embeddings.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [memory](<https://devfeed.tech/tags/memory.md>), [net](<https://devfeed.tech/tags/net.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

This tutorial builds Recall, a small persistent-memory app on Appwrite. It hosts a stateless remote MCP server in an Appwrite Function, stores embedded memories in VectorsDB for similarity search, and uses OAuth2 for user-authorized access. It also explains connecting Claude Code to the server.

### Source excerpt

Give your AI tools a shared, persistent memory. Host a stateless MCP server on Appwrite Functions, store memories in VectorsDB, and protect it with your project's OAuth2 server.

## Announcing Appwrite Domains: your registrar and DNS host

DevFeed: [Announcing Appwrite Domains: your registrar and DNS host](<https://devfeed.tech/articles/announcing-appwrite-domains-your-registrar-and-dns-host-16408.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-appwrite-domains>)

Author: Aditya Oberai

Published: 2026-09-04T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [dns](<https://devfeed.tech/tags/dns.md>), [domain](<https://devfeed.tech/tags/domain.md>), [organization](<https://devfeed.tech/tags/organization.md>), [products](<https://devfeed.tech/tags/products.md>), [tls](<https://devfeed.tech/tags/tls.md>)

### AI overview

Appwrite announces Appwrite Domains, a feature of Appwrite Cloud that combines domain registration, authoritative DNS hosting, TLS management, and hostname connections for Sites, Functions, and project APIs within an organization.

### Source excerpt

Appwrite Domains brings registration, DNS, and TLS into your organization. Buy names across 160+ TLDs, host the zone, and connect Sites and Functions.

## Fixed window, sliding window, or token bucket? Choosing a rate limit strategy in Appwrite Firewall

DevFeed: [Fixed window, sliding window, or token bucket? Choosing a rate limit strategy in Appwrite Firewall](<https://devfeed.tech/articles/fixed-window-sliding-window-or-token-bucket-choosing-a-rate-limit-strategy-in-appwrite-firewall-16479.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/firewall-rate-limit-strategies>)

Author: Atharva Deosthale

Published: 2026-09-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [client](<https://devfeed.tech/topics/client.md>)

Tags: [firewall](<https://devfeed.tech/tags/firewall.md>), [http](<https://devfeed.tech/tags/http.md>), [rate-limiting](<https://devfeed.tech/tags/rate-limiting.md>), [security](<https://devfeed.tech/tags/security.md>), [strategy](<https://devfeed.tech/tags/strategy.md>)

### AI overview

This article explains the fixed window, sliding window, and token bucket rate-limiting strategies supported by Appwrite Firewall. It compares how they handle bursts and time-window boundaries, describes IP- and User ID-based limits, and explains how to choose a strategy.

### Source excerpt

Appwrite Firewall rate limit rules support three strategies. Learn how fixed window, sliding window, and token bucket work, where each one breaks down, and how to pick the right one for your traffic.

## Announcing the Appwrite OAuth2 server: Turn your project into an identity provider

DevFeed: [Announcing the Appwrite OAuth2 server: Turn your project into an identity provider](<https://devfeed.tech/articles/announcing-the-appwrite-oauth2-server-turn-your-project-into-an-identity-provider-16437.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-oauth2-server>)

Author: Matej Bačo

Published: 2026-09-04T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [API](<https://devfeed.tech/topics/api.md>), [internal developer portal](<https://devfeed.tech/topics/internal-developer-portal.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [api](<https://devfeed.tech/tags/api.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [developer-portal](<https://devfeed.tech/tags/developer-portal.md>), [github](<https://devfeed.tech/tags/github.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [product](<https://devfeed.tech/tags/product.md>), [sdks](<https://devfeed.tech/tags/sdks.md>)

### AI overview

Appwrite announces an OAuth2 server that lets projects act as OAuth 2.1 and OpenID Connect providers. Other applications can register as clients, obtain user-approved scoped access to APIs, and use standard authorization and token flows.

### Source excerpt

Your Appwrite project can now act as an OAuth 2.1 and OpenID Connect provider, so other apps can offer Sign in with your product and request scoped access to your APIs.

## Announcing Appwrite Apps: Create apps that build on your users' Appwrite projects

DevFeed: [Announcing Appwrite Apps: Create apps that build on your users' Appwrite projects](<https://devfeed.tech/articles/announcing-appwrite-apps-create-apps-that-build-on-your-users-appwrite-projects-16402.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-apps-for-appwrite-partners>)

Author: Atharva Deosthale

Published: 2026-09-04T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [API keys](<https://devfeed.tech/topics/api-keys.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [API](<https://devfeed.tech/topics/api.md>), [migration](<https://devfeed.tech/topics/migration.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [api-keys](<https://devfeed.tech/tags/api-keys.md>), [apis](<https://devfeed.tech/tags/apis.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [developers](<https://devfeed.tech/tags/developers.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [product](<https://devfeed.tech/tags/product.md>)

### AI overview

Appwrite announces Appwrite Apps, allowing organizations to register applications that serve other Appwrite developers. The feature uses OAuth 2.1 and OpenID Connect for consent-based, scoped access to selected projects and organizations instead of pasted API keys.

### Source excerpt

Register an app in your organization and build dashboards, deployment tools, CLIs, and agents for other Appwrite developers, with consent-based, scoped tokens instead of pasted API keys.

## How to add Sign in with Appwrite to your app

DevFeed: [How to add Sign in with Appwrite to your app](<https://devfeed.tech/articles/how-to-add-sign-in-with-appwrite-to-your-app-16508.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/sign-in-with-appwrite-guide>)

Author: Matej Bačo

Published: 2026-09-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [pkce](<https://devfeed.tech/topics/pkce.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [pkce](<https://devfeed.tech/tags/pkce.md>), [sign-in](<https://devfeed.tech/tags/sign-in.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

A tutorial for enabling Appwrite's built-in OAuth2 provider so users can sign in to an app with their Appwrite account. It explains the consent and authorization-code flow, PKCE protection, and provider setup in the Appwrite Console.

### Source excerpt

Let users log in with their Appwrite account using the built-in OAuth2 provider. Learn how the flow works and how to set it up end to end.

## Announcing Bitbucket support for Sites and Functions

DevFeed: [Announcing Bitbucket support for Sites and Functions](<https://devfeed.tech/articles/announcing-bitbucket-support-for-sites-and-functions-16416.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-bitbucket-support>)

Author: Harsh Mahajan

Published: 2026-09-03T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [bitbucket](<https://devfeed.tech/topics/bitbucket.md>), [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>), [Git](<https://devfeed.tech/topics/git.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [atlassian](<https://devfeed.tech/tags/atlassian.md>), [bitbucket](<https://devfeed.tech/tags/bitbucket.md>), [build](<https://devfeed.tech/tags/build.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [git](<https://devfeed.tech/tags/git.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [qr-code](<https://devfeed.tech/tags/qr-code.md>)

### AI overview

Appwrite announces Bitbucket support for Sites and Functions. Users can connect a Bitbucket workspace and repository so pushes trigger builds and deployments, with branch previews, Bitbucket links, commit statuses, pull request comments, logs, preview URLs, and QR codes.

### Source excerpt

Appwrite now deploys from Bitbucket. Connect a workspace, pick a repository, and every push builds a Site or Function, with links that resolve to Bitbucket.

## Announcing the S3 API: Use any S3 client with Appwrite Storage

DevFeed: [Announcing the S3 API: Use any S3 client with Appwrite Storage](<https://devfeed.tech/articles/announcing-the-s3-api-use-any-s3-client-with-appwrite-storage-16442.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-s3-api>)

Author: Torsten Dittmann

Published: 2026-09-03T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [API](<https://devfeed.tech/topics/api.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [migration](<https://devfeed.tech/topics/migration.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [api](<https://devfeed.tech/tags/api.md>), [aws](<https://devfeed.tech/tags/aws.md>), [backup](<https://devfeed.tech/tags/backup.md>), [cli](<https://devfeed.tech/tags/cli.md>), [code](<https://devfeed.tech/tags/code.md>), [commands](<https://devfeed.tech/tags/commands.md>), [data](<https://devfeed.tech/tags/data.md>), [files](<https://devfeed.tech/tags/files.md>), [migration](<https://devfeed.tech/tags/migration.md>), [reuse](<https://devfeed.tech/tags/reuse.md>), [s3](<https://devfeed.tech/tags/s3.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [sdks](<https://devfeed.tech/tags/sdks.md>), [server](<https://devfeed.tech/tags/server.md>), [storage](<https://devfeed.tech/tags/storage.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

Appwrite Storage now exposes an S3-compatible API that supports AWS CLI, AWS SDKs, rclone, s3cmd, and other S3 clients. Existing buckets and files remain available through both the native Storage API and the S3 API, with support for standard operations, multipart uploads, and presigned URLs.

### Source excerpt

Appwrite Storage now exposes an S3-compatible API. Point the AWS CLI, the AWS SDKs, and tools like rclone at your Appwrite buckets, with no migration required.

## Announcing GitLab support for Appwrite Sites and Functions

DevFeed: [Announcing GitLab support for Appwrite Sites and Functions](<https://devfeed.tech/articles/announcing-gitlab-support-for-appwrite-sites-and-functions-16430.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-gitlab-support>)

Author: Matej Bačo

Published: 2026-09-03T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [GitLab](<https://devfeed.tech/topics/gitlab.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [cli](<https://devfeed.tech/tags/cli.md>), [code](<https://devfeed.tech/tags/code.md>), [collaboration](<https://devfeed.tech/tags/collaboration.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [git](<https://devfeed.tech/tags/git.md>), [gitlab](<https://devfeed.tech/tags/gitlab.md>), [gitlab-ci](<https://devfeed.tech/tags/gitlab-ci.md>), [qr-code](<https://devfeed.tech/tags/qr-code.md>)

### AI overview

Appwrite announces GitLab support for Sites and Functions, allowing users to connect GitLab repositories and deploy directly, including repositories in GitLab groups.

### Source excerpt

Connect a GitLab account to Appwrite and deploy Sites and Functions directly from your GitLab repositories, including projects that live inside GitLab groups.

[Next page](<https://devfeed.tech/sources/appwrite-blog.md?cursor=WyIyMDI2LTA5LTAzVDAwOjAwOjAwKzAwOjAwIiwgIjJmYzZiZmUyLTVmYzYtNDQxMS05YjA5LTM3YTJhYTUyNjY5OCJd>)