Skip to main content

CI-friendly PNG and Godot .import checks for pixel-art and mobile asset pipelines.

Project description

Godot Asset Pipeline Doctor

CI-friendly PNG and Godot .import checks for pixel-art and mobile asset pipelines.

The tool is designed for generic Godot projects, including private commercial games. Public examples use placeholder project names and do not require publishing project-specific content.

What It Catches

  • Missing Godot .import metadata next to PNG assets.
  • Mipmaps enabled on pixel-art profile assets.
  • Alpha-border fixing disabled on transparent assets.
  • Fully transparent edge pixels that still contain RGB color data.
  • Large textures that are risky for Android/mobile memory budgets.
  • Very large texture dimensions that may exceed conservative device limits.
  • Unexpectedly large palettes in pixel-art folders.

Install

From a local checkout:

python -m pip install -e .

After publishing to PyPI:

python -m pip install godot-asset-pipeline-doctor

Quick Start

Scan a Godot project with the default profile:

godot-asset-doctor C:\Projects\ArcadePrototype

Strict pixel-art check:

godot-asset-doctor C:\Projects\ArcadePrototype --profile pixel-2d --fail-on warning

Android/mobile check with JSON output:

godot-asset-doctor C:\Projects\ArcadePrototype --profile android-mobile --format json --output asset-report.json

Exclude generated or vendor folders:

godot-asset-doctor C:\Projects\ArcadePrototype --exclude "addons/vendor/**" --exclude "assets/generated/**"

Run through Python after installing the package:

python -m godot_asset_doctor examples\tiny-godot-project --fail-on none

Profiles

Profile Use Case
default Balanced local scan; combines pixel and mobile warnings.
pixel-2d Sprites, UI, icons, tiles, and crisp 2D assets.
android-mobile Mobile release review, especially large textures and missing import data.

Exit Codes

Flag Behavior
--fail-on none Always exits 0 unless the CLI itself errors.
--fail-on error Exits 1 if any error is found. This is the default.
--fail-on warning Exits 1 if any warning or error is found. Useful for strict CI.

Config File

Create .godot-asset-doctor.toml in the project root:

profile = "pixel-2d"
format = "json"
fail_on = "warning"
output = "asset-report.json"
exclude = ["addons/vendor/**", "assets/generated/**"]

Then run:

godot-asset-doctor C:\Projects\ArcadePrototype

CLI flags override config values. See docs/CONFIGURATION.md.

Example Output

Godot Asset Pipeline Doctor
Root: C:\Projects\ArcadePrototype
Profile: pixel-2d
Assets: 18 | Issues: 3 | Errors: 0 | Warnings: 3

[WARNING] transparent_edge_rgb: C:\Projects\ArcadePrototype\assets\player.png
  4 fully transparent edge pixel(s) carry non-black RGB values.
  Suggestion: Clean transparent RGB data or enable alpha-border fixing to reduce fringe artifacts.

Documentation

Tests

python -m unittest discover -s tests -v

CI

The included GitHub Actions workflow installs the package and runs the test suite on Python 3.11, 3.12, and 3.13.

Design Notes

  • The scanner does not need a Godot binary.
  • The scanner does not execute project scripts.
  • The scanner does not upload files or contact external services.
  • Default scans ignore common non-asset artifact folders such as docs, logs, and test-results.
  • JSON reports can include local paths, so review them before sharing publicly.

License

MIT. See LICENSE.

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_asset_pipeline_doctor-0.1.0.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

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

godot_asset_pipeline_doctor-0.1.0-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file godot_asset_pipeline_doctor-0.1.0.tar.gz.

File metadata

File hashes

Hashes for godot_asset_pipeline_doctor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2b0fe5ac7ee5a155b7d0ee9495ca799c84752b6af9117811e493640056ed8f7e
MD5 cb25856108bad3e9809f83f0fa53e805
BLAKE2b-256 3e1fe2870be8590a871d0162980b22073ee9643624d28d77d3d9a6bcf3641437

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_asset_pipeline_doctor-0.1.0.tar.gz:

Publisher: publish-pypi.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_asset_pipeline_doctor-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for godot_asset_pipeline_doctor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9b3e7bf14c065a3e369a72fbbf40127da484a99ad824b039c4f77376a543fcc1
MD5 6dedd209b8d4c04971de2f2b69ef5e16
BLAKE2b-256 cdb4a7e35f4000021c4348fef70cfad5c9893bf5576665d4ee4d638130a8ca61

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_asset_pipeline_doctor-0.1.0-py3-none-any.whl:

Publisher: publish-pypi.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