← Back to Projects
Full-StackDesktop2026Shipped

Bug Gym

A cross-platform desktop suite designed to bridge the gap between basic text editors and complex IDEs. Currently used by KMUTT SIT students to master Java fundamentals through automated, offline exam simulations.

Eliminated the 'Moodle Gap' for SIT students by providing an exam-realistic offline practice environment.

Technology Stack

Java 21JavaFXRichTextFXMavenCommonMarkjpackageGitHub Actions

What I Built

  • Engineered an in-memory compilation engine using the Java Compiler API to provide sub-second code execution without external dependencies.
  • Designed a decoupled Markdown-driven content system, allowing instructors to build and distribute new problem sets via simple .md files.
  • Developed a custom-themed RichTextFX editor featuring toggleable 'Exam Mode' (strict) vs. 'Practice Mode' (auto-indent/bracket pairing).
  • Built a robust character-level diffing algorithm to provide students with precise feedback on syntax and I/O mismatches.
  • Automated a multi-platform CI/CD pipeline using GitHub Actions to distribute native .msi, .dmg, and .deb installers.
  • Implemented local-first persistence using JSON-based state management for zero-latency progress tracking.

Demo

Bug Gym Demo walkthrough
Question editor with instant feedback
Offline-first practice dashboard
Cross-platform desktop release