Skip to main content

Godot GDScript Architecture Guard

godot-gdscript-architecture-guard checks whether GDScript files still follow a small architecture policy. It is aimed at projects where autoloads, shared scripts, and feature modules can quietly become tangled during refactors.

It does not run the Godot editor. It scans .gd files and reports dependency direction, autoload access, unresolved res:// script/resource references, module owner summaries, high fan-in/fan-out from visible script references, and possible unused scripts/resources.

Install

python -m pip install godot-gdscript-architecture-guard

From a source checkout:

python -m pip install -e .\godot-gdscript-architecture-guard

Quick Start

godot-architecture-guard examples\tiny-architecture-project --config architecture-guard.toml

Write SARIF for code scanning:

godot-architecture-guard . --config architecture-guard.toml --format sarif --output reports\architecture.sarif

Write a Markdown refactor note:

godot-architecture-guard . --config architecture-guard.toml --format markdown --output reports\architecture.md --fail-on none

Policy Example

[modules.ui]
paths = ["scripts/ui/**"]
may_depend_on = ["shared"]
allowed_autoloads = ["Settings"]

[modules.gameplay]
paths = ["scripts/gameplay/**"]
may_depend_on = ["shared"]
allowed_autoloads = ["GameState"]

[modules.shared]
paths = ["scripts/shared/**"]
may_depend_on = []
allowed_autoloads = []

[autoloads]
names = ["GameState", "Settings"]

If scripts/ui/menu.gd preloads res://scripts/gameplay/inventory.gd, the tool reports a module boundary violation unless ui may depend on gameplay.

If a configured module path matches no scripts, the tool reports that stale policy path as a warning. JSON, text, and Markdown reports also include advisory sections for module ownership, files with many visible script references, and scripts or resources that do not appear in visible res:// references. Script checks also treat class_name declarations as public entry points.

Outputs

  • text: local terminal report.
  • json: CI and scripts.
  • markdown: PR comments and review notes.
  • sarif: GitHub code scanning.
  • mermaid: dependency graph.

JSON reports include metadata, rule_help, and per-finding suggestions so CI jobs and small review scripts can explain the issue without hard-coding rule text. They also include owner_summaries, hotspots, and possible_unused_scripts / possible_unused_resources arrays for refactor review. SARIF output carries rule descriptions for code scanning tools.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

godot_gdscript_architecture_guard-0.1.4.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file godot_gdscript_architecture_guard-0.1.4.tar.gz.

File metadata

File hashes

Hashes for godot_gdscript_architecture_guard-0.1.4.tar.gz
Algorithm Hash digest
SHA256 3188ffc7684dcabc9b81f269b155dac391d3f8bf75b02eefff78778ce2fa4251
MD5 4bceca2bf5358883c072b3e338d989a8
BLAKE2b-256 ae3e2ec4d534b1115301ef92d82d353ecd958bec647376589acef1cda740d804

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_gdscript_architecture_guard-0.1.4.tar.gz:

Publisher: publish-gdscript-architecture-guard.yml on NonniGB/godot-production-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file godot_gdscript_architecture_guard-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for godot_gdscript_architecture_guard-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6f1f9921d3fb81f8fc20ce045e11e0f18d224bdaf38d578a2112113d543e72c0
MD5 560d158848f03c979e4fd8ad9c1f141c
BLAKE2b-256 59ea2418867a4fe0d0e85771d4da81b3611bfd02fa923805d861c18becd6db8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_gdscript_architecture_guard-0.1.4-py3-none-any.whl:

Publisher: publish-gdscript-architecture-guard.yml on NonniGB/godot-production-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page