Documentation

Getting Started

Connect Xina to your Appwrite project in under two minutes. Here's everything you need.

On this page

  • 1Getting Started (5 steps)
  • 2Key Concepts
  • 3Canvas Controls
  • 4Troubleshooting
  • 5API Reference
Setup Guide

5 steps to get started

1

Create an Appwrite Project

Sign up at cloud.appwrite.io and create a new project.

Navigate to your project settings and copy:

config
Endpoint:   https://cloud.appwrite.io/v1
Project ID: your-project-id
API Key:    your-api-key (with databases scope)
Note: Your API key needs read/write permissions for the databases scope.
2

Open Xina Studio

Click "Open Studio" or navigate to /studio.

You'll see the configuration panel on the right side.

3

Enter Your Credentials

In the studio's right panel, enter your Appwrite endpoint, project ID, and API key.

Click "Connect" to sync with your Appwrite instance.

config
Endpoint:    https://cloud.appwrite.io/v1
Project ID:  6457a...
API Key:     standard_8f3d...
Note: Credentials are stored locally in your browser — never sent to any server.
4

Explore Your Schema

Once connected, your databases appear in the left panel.

Select a database to load its collections onto the ERD canvas.

Collections are auto-arranged and connected by their relationship attributes.

5

Create & Edit

Create new databases and collections directly from the left panel.

Click any collection on the canvas to inspect and edit its attributes.

Add relationship attributes to connect collections — edges appear automatically.

Reference

Key Concepts

Quick reference for the main studio features.

Collections & Attributes

Collections appear as cards on the canvas. Each card shows $id at the top, user attributes in the middle, and $createdAt / $updatedAt at the bottom.

Relationships

Relationship attributes are auto-detected. Two-way relationships display crow's foot (many-to-many) markers at both ends. One-way relationships show an arrow pointing to the target's $id row.

Canvas Controls

Scroll to zoom, click-drag the background to pan, and drag collection headers to reposition cards. Use the floating controls to zoom in, out, or reset.

Side Panel Tabs

When a collection is selected, the right panel shows three tabs: Schema (attributes list), Perms (permissions), and Idx (indexes). Edit inline or add new entries.

Code Generation

Select a collection and switch to the code tab to generate typed interfaces in TypeScript, Python, Dart, Kotlin, Swift, and more. Copy with one click.

System Attributes

Every collection automatically displays $id at the top and $createdAt / $updatedAt at the bottom. These system attributes are read-only but visible for reference.

Controls

Canvas Controls

ScrollZoom in / out
Click + drag backgroundPan canvas
Click + drag headerMove collection
Click collectionSelect & show details
Click attribute rowInspect attribute
EscapeDeselect / close panel
FFit all collections in view
DeleteDelete selected item
Help

Troubleshooting

Common issues and how to resolve them.

Connection failed

Double-check your endpoint URL (must end with /v1), project ID, and API key. Ensure the key has "databases" scope enabled.

Collections not loading

Make sure your selected database has at least one collection. Try switching databases or refreshing the connection.

Relationships not showing

Relationship edges only appear for attributes of type 'relationship'. Verify the attribute exists in both collections for two-way links.

Canvas looks empty

If collections are off-screen, use the fit-all button in the floating controls or scroll to zoom out.

API

Appwrite API Reference

The Appwrite REST endpoints Xina uses under the hood.

Endpoints
GET/databases
GET/databases/{id}/collections
GET/databases/{id}/collections/{id}/attributes
POST/databases/{id}/collections
POST/databases/{id}/collections/{id}/attributes/string
DELETE/databases/{id}/collections/{id}
Self-hosted

Works with self-hosted Appwrite

Running Appwrite on your own server? Just enter your custom endpoint and Xina connects directly — no cloud dependency required.

config
Endpoint:   https://appwrite.your-domain.com/v1
Project ID: your-project-id
API Key:    your-api-key

Any Appwrite 1.4+

Cloud or self-hosted

Ready to start?

Open the studio, paste your Appwrite credentials, and see your schema come to life.