Edit of asset "YARD - Yet Another Resource Database" Accepted
| Old/Current | New/Edit | |
|---|---|---|
| Title | YARD - Yet Another Resource Database | |
| Description |
YARD is a Godot 4 plugin for organizing collections of Resources in a spreadsheet-like editor, and querying them at runtime through a lightweight API. WHAT IT GIVES YOU - Stable string IDs for your resources, no autoload boilerplate - A spreadsheet-style editor tab to browse and edit properties - Class restriction and automatic sync from a directory - A baked property index for zero-cost runtime filtering - Synchronous, blocking, or threaded loading See the README.md and the in-editor Registry class reference for usage examples and the full API. |
YARD is an editor plugin for Godot to manage resources and query them at runtime, with a table view in the editor as the cherry on top. OVERVIEW -------- YARD has two complementary aspects: A table-based resource editor. The YARD editor tab lets you create and manage registries: catalogues of resources grouped by class. Each registry provides a spreadsheet-like view of your resources and their properties. A lightweight runtime API. At runtime, a Registry is just a small .tres file holding UIDs and string IDs. It does not load the resources it references. You control when loading happens, and how. FEATURES -------- - Reference resources by stable, human-readable string IDs instead of file paths or UIDs lying around in some autoload - Restrict a registry to a specific class — only matching resources can be added - Sync a registry from a directory — entries are added and removed automatically as resource files appear or disappear - Bake a property index in the editor for zero-cost runtime queries by resource property values - Load entries individually, all at once (blocking), or asynchronously via threaded loading - No runtime overhead beyond what you explicitly request INSTALLATION ------------ 1. Copy the addons/yard folder into your project's addons/directory 2. Enable the plugin in Project > Project Settings > Plugins USAGE ----- Creating a registry: Open the Registry tab in the editor, click File > New Registry, and configure: - Class restriction: only resources of this class will be accepted - Scan directory: the registry stays in sync with files in this folder - Indexed properties: property names to bake for runtime filtering Loading an entry: ``` var skeleton: Enemy = ENEMIES.load_entry(&"skeleton") ``` Loading all entries (blocking): ``` var all_enemies := ENEMIES.load_all_blocking() ``` Loading all entries (threaded): ``` var tracker := ENEMIES.load_all_threaded_request() ``` Querying the index: ``` var legendaries := WEAPONS.filter_by_value(&"rarity", Rarity.LEGENDARY) var high_level := WEAPONS.filter_by(&"level", func(v): return v >= 10) var results := WEAPONS.filter_by_values({ &"rarity": Rarity.LEGENDARY, &"type": &"sword", }) ``` |
| Category | Tools | |
| License | MIT | |
| Repository Provider | GitHub | |
| Repository Url | https://github.com/elliotfontaine/yard-godot | |
| Issues Url | https://github.com/elliotfontaine/yard-godot/issues | |
| Godot version | Godot 4.5 | |
| Version String | v1.2.0 | |
| Download Commit | 48a518b4bec03c8b5ad446f57a2b669110a1752b | |
| Download Url (Computed) | https://github.com/elliotfontaine/yard-godot/archive/48a518b4bec03c8b5ad446f57a2b669110a1752b.zip | |
| Icon Url |
https://raw.githubusercontent.com/elliotfontaine/yard-godot/refs/heads/main/icon.png
|
|