https://github.com/kthecoder/kuzugd
A GraphDB using Kuzu for Godot
https://github.com/kthecoder/kuzugd
cypher godot godot4 graphdb kuzu
Last synced: about 2 months ago
JSON representation
A GraphDB using Kuzu for Godot
- Host: GitHub
- URL: https://github.com/kthecoder/kuzugd
- Owner: kthecoder
- License: other
- Created: 2025-05-29T22:02:14.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-22T23:03:22.000Z (8 months ago)
- Last Synced: 2025-10-14T22:48:39.470Z (6 months ago)
- Topics: cypher, godot, godot4, graphdb, kuzu
- Language: C++
- Homepage:
- Size: 14.1 MB
- Stars: 3
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README

# Kuzu Godot
**Godot 4.4 is currently used Version**
Bindings for [Kuzu](https://github.com/kuzudb/kuzu) in [Godot](https://github.com/godotengine/godot)
Embedded property graph database built for speed. Using Graph Query Language of [Cypher](https://opencypher.org/resources/).
# Overview
1. Create an Instance of Kuzu
1. Set the Database Folder Path
1. Initialize the Database
1. Create a Connection to the DB with thread count
```gdscript
var myKuzuDB : KuzuGD = KuzuGD.new(); # Instantiate
var db_path = ProjectSettings.globalize_path("res://data/database/kuzu_db");
var success_db = myKuzuDB.kuzu_init(db_path); # Set Path
var success_connect = myKuzuDB.kuzu_connect(1); # Activate Connection
```
1. Execute Queries
1. Define Tables
1. Write Data
1. Read Data
```gdscript
# Define Tables
myKuzuDB.execute_query("CREATE NODE TABLE IF NOT EXISTS person(name STRING, age INT64, PRIMARY KEY(name));");
# Write Data
myKuzuDB.execute_query("CREATE (:person {name: 'Alice', age: 30});");
# Read Data
var queryResult : Array = myKuzuDB.execute_query("MATCH (p:person) RETURN p.*");
print(queryResult);
```
# Setup
## Building from Source
Requires the Kuzu Binaries in the `bin//kuzu` folders, pythons Scons, Godot, g++ compiler.
# Contributing
Any and all Contributions are subject to the [CLA.md](https://github.com/kthecoder/KuzuGD/blob/main/CLA.md)