$ account nathanhoad
This repository is a Godot 4 editor plugin designed for creating puzzle dependency charts (graphs) used in adventure game design. It provides a user-friendly interface within the Godot editor to create and manage boards (graphs) containing nodes (things) that can be customized with text, types (which determine color), and connections to represent dependencies. The plugin features include node creation, editing, resizing, dragging, connecting, and deletion, all integrated with Godot's undo/redo system. Users can switch between multiple boards, edit board labels, and export the current board to Graphviz format. The plugin follows a modular scene-based architecture, with separate scenes for the main view, board, individual nodes, and various dialogs (settings, export, etc.). It leverages Godot's built-in tools and APIs, such as the GraphEdit node for the graph interface and the EditorPlugin system for integration into the editor. The code demonstrates good engineering practices through proper use of the undo/redo system for user actions, encapsulation of settings and utility functions, and a clear separation of concerns between UI logic and data management. Notable reusable components include a utility for generating color textures (`utilities/icons.gd`) and a settings management wrapper (`utilities/settings.gd`) that simplifies the handling of plugin-specific data in Godot's ProjectSettings. The plugin is actively maintained, with recent commits indicating ongoing support, and shows minimal technical debt by adhering to current Godot 4.x conventions and APIs.