raisindb-overview

Installation
SKILL.md

RaisinDB Overview

Critical Rules

  1. Always ask the user for the repository name before writing any frontend code. The repository is a server-side concept (like a database name) — it is NOT the same as the workspace or package name. The WebSocket URL uses the repository name: ws://localhost:8080/sys/default/{REPOSITORY}. Use it in client.initSession(REPOSITORY), client.database(REPOSITORY), and client.loginWithEmail(email, password, REPOSITORY).

  2. Always validate after changing any YAML in package/. Run this every time you create or modify a .yaml or .node.yaml file:

    npm run validate
    

    Do NOT skip this step. Fix any errors before proceeding.

  3. For navigation queries, use a hide_in_nav Boolean property on the NodeType instead of filtering by archetype or hardcoding path exclusions. Add hide_in_nav: Boolean to your Page NodeType and filter with properties->>'hide_in_nav'::Boolean != true.

  4. Boolean property queries: Cast the key to Boolean, not String: properties->>'featured'::Boolean = true. For string properties, cast to String: properties->>'status'::String = 'published'.

What RaisinDB Is

RaisinDB is a multi-tenant content database with SQL queries, graph traversal (Cypher/PGQ), real-time WebSocket subscriptions, and CRDT-based replication. You model content as typed nodes living at hierarchical paths, then build frontends that map those nodes to UI components. Every node belongs to a tenant, repository, branch, and workspace.

Related skills
Installs
3
GitHub Stars
1
First Seen
Apr 3, 2026