Skip to main content

Check Godot GDScript module boundaries, autoload access, dependency direction, and architecture drift.

Project description

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, and unresolved res:// script/resource references.

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

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.

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. SARIF output carries the same rule descriptions for code scanning tools.

Project details


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.1.tar.gz (9.5 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.1.tar.gz.

File metadata

File hashes

Hashes for godot_gdscript_architecture_guard-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5dd1422b0b6177fcf32973d380e76f2c7ddcccd5ad5955f3e6a4cf32674508e2
MD5 bd09f90296e92c68f4a361c9c2b151e7
BLAKE2b-256 8dcedfa8e52ac4387967572f9c407237a32fc39279cc108d07dc9211700d0b49

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_gdscript_architecture_guard-0.1.1.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.1-py3-none-any.whl.

File metadata

File hashes

Hashes for godot_gdscript_architecture_guard-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d73b4f46b3a2b001670205a376caa4cb2e449b122494f962144694b22f780e31
MD5 38cd95b5f2e15c0286b4cceea75b803e
BLAKE2b-256 8e04362c4091025af3309c4067dd7e1572c46f695871b2417719da30c14128c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_gdscript_architecture_guard-0.1.1-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