DEV Community

Alex Spinov
Alex Spinov

Posted on

Appwrite Has a Free Backend-as-a-Service — Auth, Database, Storage, Functions, and Messaging

If Firebase and Supabase had a baby that was open-source and self-hostable, it would be Appwrite.

I discovered it when a client needed auth, database, file storage, and push notifications — but didn't want to lock into Google or AWS. Appwrite gave us everything in one Docker command.

What You Get Free

Self-hosted (unlimited) or Appwrite Cloud free tier:

  • Authentication — email/password, OAuth (30+ providers), phone, magic link, anonymous
  • Databases — document-based, relationships, full-text search, real-time subscriptions
  • Storage — file uploads, image transformations, antivirus scanning
  • Functions — serverless in Node.js, Python, PHP, Ruby, Dart, Swift, and more
  • Messaging — push notifications, email, SMS
  • Realtime — WebSocket subscriptions on any resource
  • Teams — user groups with role-based permissions
  • Avatars — auto-generated user avatars, favicon fetching
  • Locale — country, language, currency data

Cloud free tier: 75K requests/month, 10GB bandwidth, 2GB storage, 750K function executions.

Quick Start

# Self-hosted with Docker
docker run -it --rm \
  --volume /var/run/docker.sock:/var/run/docker.sock \
  --volume "$(pwd)/appwrite:/usr/src/code/appwrite:rw" \
  --entrypoint="install" \
  appwrite/appwrite:1.6

# Cloud: sign up at cloud.appwrite.io
Enter fullscreen mode Exit fullscreen mode

Real Example: Web SDK

import { Client, Account, Databases } from 'appwrite';

const client = new Client()
  .setEndpoint('https://cloud.appwrite.io/v1')
  .setProject('YOUR_PROJECT_ID');

// Auth
const account = new Account(client);
await account.createEmailPasswordSession('user@example.com', 'password');

// Database
const db = new Databases(client);
const posts = await db.listDocuments('main', 'posts', [
  Query.orderDesc('$createdAt'),
  Query.limit(20)
]);

// Realtime
client.subscribe('databases.main.collections.posts.documents', (response) => {
  console.log('New post:', response.payload);
});
Enter fullscreen mode Exit fullscreen mode

What You Can Build

1. Mobile app backend — SDKs for Flutter, React Native, iOS, Android. Complete BaaS.
2. SaaS MVP — auth + database + storage + functions. Ship in days.
3. Chat app — realtime subscriptions + messaging API.
4. File sharing — storage with permissions, image transforms, direct links.
5. Multi-tenant app — teams + roles for organization-based access.

Appwrite vs Firebase vs Supabase

Firebase: Google lock-in, proprietary. Appwrite: self-host, own your data.
Supabase: PostgreSQL-based, SQL. Appwrite: document-based, no SQL needed.
Appwrite advantage: Most complete BaaS for developers who want to self-host.


Need backend automation? Email spinov001@gmail.com

More free tiers: 53+ Free APIs Every Developer Should Bookmark

Top comments (0)