You are browsing as a guest. Sign up (or log in) to start making projects!

joelj

@joelj

Joined July 12th, 2026

  • 2Devlogs
  • 2Projects
  • 1Ships
  • 1Votes
Ship Pending review

I built a web tool designed to make life easier for Pygame developers: the Pygame Code Inspector.

Instead of running a game script, waiting for it to crash, or spending hours searching for sneaky performance bugs, you can just paste your Python code directly into the app. It uses Python’s built-in ast (Abstract Syntax Tree) module to parse your code safely without executing it. In seconds, it checks for missing initialization/quit calls, unmonitored infinite loops, hardcoded window sizes, uncapped frame rates, and memory leaks from unused assets. Then, it gives your project a clean Code Health Score (0–100) and a letter grade (A through F) so you immediately know what to fix.

🛠️ What Was Challenging
Safe Code Parsing: Getting the ast visitor logic working to reliably detect anti-patterns—like unmonitored while loops or dangling pygame.mixer assets—without actually running user-submitted code required careful structural logic.

Deployment Realities: Uploading the project to GitHub threw a few curveballs! I accidentally dragged an entire virtual environment folder with thousands of extra files at first, and later hit a tricky ModuleNotFoundError on Streamlit Cloud caused by a subtle uppercase/lowercase mismatch in my filenames (Code_Checker.py vs. code_checker.py). Diagnosing and fixing environment issues in Linux deployment environments was a huge learning moment.

✨ What I’m Proud Of
Zero-Setup Web Access: Turning a local Python script into a fully hosted, interactive web application on Streamlit Cloud that anyone can access in their browser with zero local setup.

Actionable Developer Feedback: Creating a tool that isn’t just a basic syntax checker, but an actual quality-of-life upgrade for game devs that translates technical code analysis into an easy-to-understand score and grade.

Full Open-Source Setup: Shipping the full package from scratch—clean repo structure, proper requirements.txt, clear README documentation, and an MIT License.

-summary created by gemini because im too lazy to write

Try project → See source code →
Open comments for this post

2h 17m 31s logged

Over the past few days, I built and launched Pygame Code Inspector, an automated static analysis web app that checks Pygame scripts for common bugs, bad practices, and performance bottlenecks—all without needing to run the code. Using Python’s built-in ast (Abstract Syntax Tree) module, the backend parses source code in real time to catch missing setup/teardown calls (pygame.init() / pygame.quit()), unmonitored game loops, uncapped frame rates, hardcoded resolutions, unused memory assets, and missing error handling. It aggregates these checks into a clean 0–100 health score and assigns an overall letter grade (A through F).Once the core inspector logic was solid, I built an interactive frontend using Streamlit so users can paste their code directly into the browser for instant feedback. After setting up open-source documentation under an MIT License, I pushed the repository to GitHub and deployed it live via Streamlit Cloud. Navigating server-side requirements and case-sensitive imports on Linux was a great learning experience, but seeing the app live on the web and giving instant feedback on real Pygame code made it completely worth it!

2
1
5
Open comments for this post

43m 43s logged

Hey everyone! I’m a 9th-grade developer logging my first 40-minute Hackatime session for Stardance on my journey to earn 90 Stardust points for a Google Play Developer License. I’m building an Automated Code Health Checker in Python—a pre-flight tool that scans project files line-by-line to catch missing frame-rate caps (.tick()), unmonitored infinite loops, and missing error handlers (try/except) before you even run your code. The core terminal inspector is live and running in PyCharm, and my next step is building out a full visual diagnostic UI!

0
0
1

Followers

Loading…