appwrite-dotnet

Implements server-side Appwrite integrations in C# covering users, tables, storage, and SSR authentication.

Updated Sep 13, 2026
One-click install
npx skills add https://github.com/aadilmallick/myfitness-pal-clone --skill appwrite-dotnet-aadilmallick
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: appwrite-dotnet
Source: https://github.com/aadilmallick/myfitness-pal-clone/tree/main/.agents/skills/appwrite-dotnet
Command: npx skills add https://github.com/aadilmallick/myfitness-pal-clone --skill appwrite-dotnet-aadilmallick

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building .NET backends against Appwrite requires knowing the correct SDK patterns—TablesDB versus the deprecated Databases class, string column types, query builders, permission strings, and dual-client SSR authentication—and getting any of these wrong causes silent access failures or insecure sessions. ## Core Features & Use Cases - Server SDK Operations: Covers user management, TablesDB row CRUD with the full Query API, file storage with InputFile factories, teams, and serverless function execution. - SSR Authentication: Implements the admin-client/session-client pattern for ASP.NET and Blazor, including email/password login, OAuth2 token exchange, and secure a_session cookie handling. - Permissions & Error Handling: Provides Permission/Role string construction, common AppwriteException codes, and warnings about insecure Role.Any() usage. - Use Case: You are building an ASP.NET Minimal API backed by Appwrite and need to log users in via OAuth, store their session in an HttpOnly cookie, and create rows in a table with per-user read/update permissions. ## Quick Start Ask the agent to write C# code that creates an Appwrite client with an API key and inserts a row into a table with user-scoped read and update permissions.

Frequently Asked Questions about appwrite-dotnet

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I use the Appwrite .NET SDK in a C# backend?

Install the Appwrite NuGet package, then create a Client with SetEndpoint, SetProject, and SetKey using your API key. From there you instantiate services like Users, TablesDB, Storage, and Teams to perform server-side operations.

How do I implement Appwrite authentication in ASP.NET?

Use two clients: an admin client with an API key to create sessions, and a per-request session client that reads the a_session_<PROJECT_ID> cookie. Store the session secret in an HttpOnly, Secure, SameSite=Strict cookie after login or OAuth callback.

Should I use TablesDB or Databases in the Appwrite .NET SDK?

Use TablesDB for all new code because the Databases class is deprecated. Only use Databases when maintaining an existing codebase that already depends on it or when explicitly required.

What string column types does Appwrite support?

Appwrite supports varchar (inline, fully indexable up to 16,383 chars), text, mediumtext (~4M chars), and longtext (~1B chars). The text-family types are stored off-page so they do not consume the 64 KB row size limit, but only support prefix indexing.

Why do users get 401 or 403 errors on Appwrite rows?

Appwrite grants no access by default, so rows without explicit permissions are inaccessible even to their creator. Set Permission.Read, Update, or Delete with Role.User or Role.Team on the row, or configure table-level permissions, and avoid Role.Any() with write permissions.