Skip to content
~/docs/api/high-level
DOCUMENTATION

High-Level API

Drizzle-style fluent API

The high-level API provides a Drizzle-style fluent interface for working with your graph database.

kite()

Initialize the database connection.

typescript
import { kite } from '@kitedb/core';

const db = await kite(path, options);

Node Methods

typescript
// Create nodes
db.insert(user).values({ key: "alice", name: "Alice" }).returning()
db.insert(user).valuesMany([{ key: "a" }, { key: "b" }]).execute()

// Upsert by key
db.upsert(user).values({ key: "alice", email: "a@x.com" }).execute()

// Read
db.get(user, "alice")
db.getRef(user, "alice")

// Update by key
db.update(user, "alice").setAll({ name: "Alice V2" }).execute()

// Delete by key
db.delete(user, "alice")

// List / count
db.all(user)
db.countNodes()
db.countNodes(user)

Edge Methods

typescript
// Create edge
db.link(src, follows, dst, { since: 2024 })
db.link(src).to(dst).via(follows).props({ since: 2024 }).execute()

// Delete / check
db.unlink(src, follows, dst)
db.hasEdge(src, follows, dst)

// Update edge props
db.updateEdge(src, follows, dst).setAll({ weight: 0.8 }).execute()

// List / count
db.allEdges()
db.allEdges(follows)
db.countEdges()
db.countEdges(follows)

Next Steps