baekalfen/pyboy

Game Boy emulator written in Python

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 17 minutes ago
Added to GitGenius on September 13th, 2026
Created on May 29th, 2015
Open Issues & Pull Requests: 23 (+0)
GitHub issues: Enabled
Number of forks: 539
Total Stargazers: 5,197 (+0)
Total Subscribers: 75 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 4
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,278 days
Stale 30+ days: 4
Stale 90+ days: 4

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • game-compatibility (9)
  • good first issue (9)
  • enhancement (7)
  • help wanted (7)
  • bug (5)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

PyBoy is a Game Boy emulator written in Python that can be used both as a standalone application and as a library for scripting and AI development.

The emulator solves the problem of running classic Game Boy games on modern systems while providing programmatic access to game state for automation and machine learning. It implements the Game Boy hardware in Python with performance optimizations through Cython and PyPy support. The tool allows developers to interact with running games through an API, inspect game memory and sprites, control input, and manipulate game state including rewinding to previous points.

Developers should choose this tool if they want to build AI agents to play Game Boy games, create bots, or automate gameplay testing. It suits projects involving reinforcement learning on retro games, as it provides direct access to game state and supports frame skipping to accelerate training. The emulator works as both a command-line player for casual use and as a library integrated into Python scripts, making it flexible for different use cases from casual play to serious AI research.

The project maintains active development with regular updates to the codebase. The maintainers prioritize performance optimization, offering frame-skipping capabilities to accelerate AI training and scripting workflows. Documentation is comprehensive, including API references, wiki pages with game-specific examples, and code examples covering multiple titles. The project maintains an active Discord community for user support and discussion.