Patterns + best practices for Appwrite BaaS. Dart, Python, TypeScript.
Disclaimer: Unofficial community resource. Not affiliated/endorsed/sponsored by Appwrite. "Appwrite" trademark of Appwrite Ltd.
npx skills add sgaabdu4/appwrite-backendOr clone into ~/.claude/skills/:
git clone https://github.com/sgaabdu4/appwrite-backend ~/.claude/skills/appwrite-backendSkill gives AI agents Appwrite dev guidance:
- TablesDB — CRUD, queries, relationships, transactions, bulk ops
- Authentication — OAuth, email/password, phone, JWT, MFA, sessions
- Storage — uploads, previews, transforms, file tokens
- Functions — cold start opt, event triggers, domain grouping
- Realtime — WebSocket subs, channels, server-side filters
- Messaging — push, email, SMS
- TablesDB API (Collections API deprecated 1.8.0)
- Atomic operators, race-free updates
- Cursor pagination, perf
- Query.select() relationship expansion
- Type-safe SDK gen
appwrite generate - Official SDK packages only; raw Appwrite HTTP is a violation
- Self-hosted Appwrite 1.9.0 SDK pins:
dart_appwrite: 21.1.0, Flutterappwrite: 23.0.0
| Topic | File |
|---|---|
| Schema & Columns | schema-management.md |
| Query Optimization | query-optimization.md |
| Atomic Operators | atomic-operators.md |
| Relationships | relationships.md |
| Transactions | transactions.md |
| Bulk Operations | bulk-operations.md |
| Authentication | authentication.md |
| Functions | functions.md |
| Realtime | realtime.md |
| Performance | performance.md |
| Error Handling | error-handling.md |
Full list → SKILL.md.
- Claude Code
- Cursor
- Windsurf
- Any agent on Agent Skills standard
Auto-activates when:
- Mention Appwrite, TablesDB, Appwrite SDK
- Work Appwrite auth/storage/functions
- Ask BaaS patterns
Direct invoke:
/appwrite-backend
PRs welcome:
- Fork repo
- Feature branch (
git checkout -b feature/add-new-pattern) - Match existing doc style
- Submit PR
- SKILL.md <500 lines
- Detail patterns →
references/ - Code examples: Dart, Python, TypeScript
- Test Appwrite 1.9+
MIT — see LICENSE