Skip to main content

Godot Mobile Perf Doctor

Static mobile performance diagnostics for Godot 4 projects, with optional parsing of captured adb summary text.

The first release deliberately starts with static checks so it works in CI without an Android device.

Use it before device testing to catch obvious mobile risks: desktop renderer settings, missing or risky stretch configuration, oversized textures, missing safe-area evidence, and suspicious viewport settings.

Install

python -m pip install -e .

From PyPI:

python -m pip install godot-mobile-perf-doctor

Quick Start

godot-mobile-perf-doctor C:\Projects\MyGame --static
godot-mobile-perf-doctor . --profile portrait-2d --format json --output perf-report.json
godot-mobile-perf-doctor . --adb-summary adb-summary.txt --format markdown --output mobile-perf-report.md
godot-mobile-perf-doctor . --mobile-ui-metadata reports\mobile-ui.json --format markdown --output mobile-perf-report.md

List the built-in mobile profiles:

godot-mobile-perf-doctor --list-profiles

Config File

Create .godot-mobile-perf-doctor.toml in the project root:

profile = "portrait-2d"
format = "markdown"
fail_on = "warning"
output = "reports/mobile-perf.md"
max_texture_dimension = 2048
max_viewport_pixels = 2073600
mobile_ui_metadata = "reports/mobile-ui.json"

Profiles provide default texture and viewport budgets. CLI flags override config values, and config values override profile defaults:

godot-mobile-perf-doctor . --static --max-viewport-pixels 921600 --format json

Built-in profiles:

Profile Use When
portrait-2d Phone-first 2D projects with a portrait-oriented base viewport.
balanced-mobile General mobile projects that can tolerate a 1080p-style base viewport.
low-end-mobile Older Android devices or battery-sensitive builds need stricter budgets.
tablet-2d Larger-screen 2D projects intentionally use a bigger base viewport.

Real Workflow: Prepare An Android Test Build

Run a static mobile scan before sending a build to a phone:

godot-mobile-perf-doctor . --static --profile portrait-2d --fail-on warning --format markdown --output reports\mobile-perf.md

Use the report to check:

  • whether the renderer choice is suitable for mobile;
  • whether viewport and stretch settings are explicit and not likely to distort phone layouts;
  • whether expected mobile UI metadata exists for safe-area and touch-layout review;
  • which PNG textures carry the largest estimated RGBA memory cost;
  • whether a recent adb summary shows janky frames that need follow-up.

If you already captured a short device run, attach the summary:

godot-mobile-perf-doctor . --adb-summary reports\adb-summary.txt --format json --output reports\mobile-perf.json

What It Checks

  • Renderer setting and mobile risk.
  • Base viewport size against the selected mobile profile.
  • Stretch mode presence and stretch/aspect="ignore" risks.
  • Optional mobile UI metadata path for safe-area evidence handoff.
  • PNG texture dimensions and estimated RGBA memory.
  • Optional adb summary text for device model and janky frame counts.

JSON reports include report metadata, active budget limits, and a rules object with plain-language explanations. Text, Markdown, and SARIF output use the same rule titles so local and CI reports are easier to compare.

Documentation

CI Example

- run: python -m pip install godot-mobile-perf-doctor
- run: godot-mobile-perf-doctor . --static --profile portrait-2d --format markdown --output reports/mobile-perf.md

Development

python -m pip install -e .
python -m unittest discover -s tests -v
godot-mobile-perf-doctor examples\tiny-godot-project --static --fail-on none

Examples are generic and safe to publish.

Metadata

Release files for godot-mobile-perf-doctor 0.1.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for godot-mobile-perf-doctor 0.1.8
File Size Uploaded
godot_mobile_perf_doctor-0.1.8.tar.gz 15.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for godot-mobile-perf-doctor 0.1.8
File Interpreter ABI Platform
godot_mobile_perf_doctor-0.1.8-py3-none-any.whl Python 3 none any Details

Total release size: 30.3 kB

Release files / godot_mobile_perf_doctor-0.1.8.tar.gz

Download URL godot_mobile_perf_doctor-0.1.8.tar.gz
Size 15.5 kB
Tags Source
SHA-256 checksum
How to use checksums
e4ffc6093d984952df96798af9d8d290e79bf607e871946d261fd6385771249a
BLAKE2b-256 checksum
How to use checksums
1dfed6edcdef66af9c65d118980205cd67689405252f3503fb7d4268ac4f9b18
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 27, 2026.

Transparency log

Release files / godot_mobile_perf_doctor-0.1.8-py3-none-any.whl

Download URL godot_mobile_perf_doctor-0.1.8-py3-none-any.whl
Size 14.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8479109235e38d57bb4177220dac0cf2bbc8affa158002f1c505bafe3b5f4956
BLAKE2b-256 checksum
How to use checksums
c6ed26c9dc899e351f3fc1e2988c09b08ef53e148caa8a2d18bdf23aae5308ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 27, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.8 This release

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page