Features

Built for Appwrite developers

Every feature is designed around the Appwrite databases API. No generic diagramming — just the tools you need.

Canvas

Interactive ERD Canvas

A fully interactive entity-relationship diagram that auto-generates from your Appwrite schema. Drag collections, pan and zoom the canvas, and see every relationship at a glance.

  • Drag & drop collections freely on the canvas
  • Infinite canvas with smooth pan and zoom
  • Obstacle-aware orthogonal edge routing
  • Rounded Bézier corners on all connectors
Users
name
email
posts →
Posts
title
content
← author
Relationships

Smart Relationship Detection

Xina reads your Appwrite relationship attributes and automatically maps connections between collections. Two-way relationships show crow's foot notation; one-way relationships display directional arrows.

  • Two-way relationships with crow's foot (many-to-many) markers
  • One-way relationships with directional arrows to $id
  • Automatic deduplication of mirrored relationship pairs
  • Visual port dots on relationship and $id rows
Users
posts →
Posts
← author
Many-to-many (two-way)
Schema

Full Schema Management

Create and manage databases, collections, attributes, and indexes directly from the studio. Every change is pushed to your Appwrite instance in real-time.

  • Create and switch between multiple databases
  • Add collections with drag-and-drop or the side panel
  • System attributes ($id, $createdAt, $updatedAt) shown automatically
  • Real-time sync — changes reflect instantly on the canvas
users3 attrs
posts4 attrs
comments5 attrs
tags6 attrs
Inspector

Inspect & Edit Anything

Click any collection or attribute on the canvas to open the detail panel. View types, required flags, relationships, permissions, and indexes — then edit in place.

  • Click-to-select any collection or attribute
  • Side panel with schema, permissions, and index tabs
  • Attribute type badges and required indicators
  • Code generation for collections (TypeScript, Python, Dart, etc.)
UsersSelected
namestring
emailemail
isAdminboolean
postsrelation
Attribute Types

Every Appwrite attribute type

Full support for all attribute types — each rendered with distinctive color coding on the canvas.

String

Text values with optional size limits

Integer

Whole numbers with min/max range

Float

Decimal numbers with precision control

Boolean

True or false toggle values

Email

Validated email address format

URL

Validated URL format strings

IP

IPv4 or IPv6 address values

Enum

Predefined list of allowed values

Datetime

ISO 8601 date-time strings

Relationship

Links between collections

Code Generation

Multi-language Code Generation

Select any collection and generate typed code in your language of choice. Interfaces, model classes, schema definitions — ready to copy.

  • TypeScript interfaces & Zod schemas
  • Python dataclasses & Pydantic models
  • Dart, Kotlin, Swift, Go, Rust model classes
  • PHP classes & Ruby structs
TypeScriptPythonDart
interface Users {
  $id: string;
  name: string; // required
  email: string; // email
  avatar?: string; // URL
  role: "admin" | "user";
  posts: Posts[]; // relationship
}
Shortcuts

Canvas shortcuts

Navigate the ERD canvas efficiently with keyboard and mouse.

Pan the canvas
SpaceDrag
Zoom in / out
Scroll
Select collection or attribute
Click
Deselect / close panel
Escape
Fit all collections in view
F
Delete selected item
Delete
Comparison

Xina vs. generic diagramming tools

Purpose-built beats generic every time.

FeatureXinaGeneric
Live Appwrite sync
Auto relationship detection
Crow's foot ERD notation
Obstacle-aware routing
Create collections in-tool
System attribute display
Code generation
Free & open source
Export

Export & Share

Export your ERD as a high-resolution PNG or SVG image for documentation, presentations, or team discussions. Share schemas without requiring others to connect.

  • High-resolution PNG & SVG export
  • Copy generated code to clipboard
  • Share schema snapshots with your team
  • Works with Appwrite Cloud & self-hosted
TypeScript
Python
SVG
One-click export to multiple formats

See it in action

Connect your Appwrite project and explore every feature.