Game Development 14 min read

23 Must‑Try Open‑Source Game Projects on GitHub to Boost Your Coding Skills

This article curates 23 open‑source game projects hosted on GitHub—ranging from Vim plugins and JavaScript Tetris clones to Python, Go, and web‑based multiplayer titles—providing installation steps, feature highlights, code snippets, and live demo links so developers can learn, experiment, and have fun during breaks.

ITPUB
ITPUB
ITPUB
23 Must‑Try Open‑Source Game Projects on GitHub to Boost Your Coding Skills

The article introduces a collection of 23 open‑source game projects hosted on GitHub, covering a wide range of genres and technologies, and explains how each can be used for learning and entertainment.

Games on GitHub

This repository aggregates many open‑source games and related tools, including educational, browser‑based, and engine projects.

vim-game-code-break

A Vim plugin that turns the editor into a "break the beans" style game. Plug 'johngrib/vim-game-code-break' After installing, run :source % and :PlugInstall, then start the game with :VimGameCodeBreak.

h / l – move left/right

space – launch ball

` – cheat

] – god mode, [ – human mode

q – quit game, Q – exit Vim

GitHub: https://github.com/johngrib/vim-game-code-break

javascript-tetris

A simple JavaScript Tetris implementation using HTML5, with full source and a live demo.

GitHub: https://github.com/jakesgordon/javascript-tetris Online demo: https://codeincomplete.com/games/tetris/

react-tetris

A React‑Redux version of Tetris that also demonstrates Immutable.js for state management.

GitHub: https://github.com/chvin/react-tetris Online demo: https://chvin.github.io/react-tetris/

sshtron

A multiplayer Lightcycle game playable over SSH. # ssh sshtron.zachlatta.com W/A/S/D – move (avoid arrow keys)

Ctrl+C – quit

GitHub: https://github.com/zachlatta/sshtron

battle-city

A React recreation of the classic tank battle game, using SVG for pixel‑style graphics, Immutable.js for data structures, and Redux‑Saga for game logic.

GitHub: https://github.com/shinima/battle-city Online demo: http://shinima.pw/battle-city/

pacman

An HTML5 implementation of Pac‑Man with clean, commented source code, ideal for beginners.

GitHub: https://github.com/mumuy/pacman Online demo: http://passer-by.com/pacman/

ratel

A command‑line Dou Dizhu (Chinese card game) built on Netty, supporting both client and server modes.

GitHub: https://github.com/ainilili/ratel

lila

An open‑source, ad‑free, multilingual online chess platform written in Scala.

GitHub: https://github.com/ornicar/lila Online: https://lichess.org/

star-battle

A JavaScript ES6 Canvas space‑shooter game.

W/A/S/D – control ship, Space – fire

Fuel starts at 15, decreases 1 per second, game ends at 0

Collect fuel bottles (+15, max 30)

Hit enemies (+5), planets (+10 after two hits), friendly fire –10

Collisions affect fuel and score, negative scores allowed

P – pause, M – mute

GitHub: https://github.com/gd4Ark/star-battle Online demo: https://4ark.me/star-battle/

PythonPlantsVsZombies

A Python recreation of the classic Plants vs. Zombies game.

Supports Sunflower, Peashooter, Ice Shooter, Nut, Cherry Bomb, etc.

Includes various zombie types such as regular, whiplash, conehead, buckethead, newspaper zombies.

Level data stored in JSON (positions, timing, background).

Allows plant card selection before each level.

Day/night modes and adjustable wall‑nut bowling speed.

# python main.py
import pygame as pg
from source.main import main
if __name__ == '__main__':
    main()
    pg.quit()
GitHub: https://github.com/marblexu/PythonPlantsVsZombies

HueJumper2k

A 2 KB JavaScript 3D racing game.

Mouse – steer

Click – brake

Double‑click – jump

R – restart

1 – toggle screen view

GitHub: https://github.com/KilledByAPixel/HueJumper2k Online demo: https://killedbyapixel.itch.io/hue-jumper

free-python-games

A collection of beginner‑friendly Python games (snake, maze, Pong, word guess, etc.) with simple, readable code.

GitHub: https://github.com/grantjenks/free-python-games

css-sweeper

A Minesweeper clone built entirely with HTML and CSS.

GitHub: https://github.com/propjockey/css-sweeper Online demo: https://propjockey.github.io/css-sweeper/

emoji-minesweeper

A Minesweeper game that uses emoji symbols.

Left‑click – reveal a cell

Right‑click – flag as bomb

Double‑click – reveal surrounding cells (excluding flagged bombs)

GitHub: https://github.com/muan/emoji-minesweeper Online demo: http://muan.github.io/emoji-minesweeper/

MazeBattles.com

An online multiplayer maze game built with Node.js and Socket.io; move with WASD.

GitHub: https://github.com/HenryDavidZhu/MazeBattles.com Online demo: http://www.mazebattles.com/

flexboxfroggy

An interactive game that teaches CSS Flexbox concepts across 24 levels, available in multiple languages.

GitHub: https://github.com/thomaspark/flexboxfroggy Online demo: https://flexboxfroggy.com/

gorched

A terminal‑based Scorched Earth clone written in Go.

← → – adjust cannon angle

Space – charge and fire

Ctrl+C – exit

Ctrl+R – restart round

Ctrl+N – next round

S – show score

A – show player stats

H – help

GitHub: https://github.com/zladovan/gorched Online demo: https://repl.it/@zladovan/gorched

Mindustry

A free, Java‑based sandbox tower‑defense game supporting Windows, Linux, macOS, and Android.

GitHub: https://github.com/Anuken/Mindustry

AIDungeon

A machine‑learning‑powered text adventure game.

GitHub: https://github.com/Latitude-Archives/AIDungeon Online demo: https://play.aidungeon.io/main/landing

OpenEmu

A macOS emulator that runs dozens of retro console games (Nintendo, PSP, Sega 32X, etc.) and supports external controllers and screen mirroring.

GitHub: https://github.com/OpenEmu/OpenEmu

gameboy.live

A terminal‑based Game Boy emulator with cloud‑gaming support via sockets.

CPU instruction emulation

Timers and interrupts

Supports ROM, MBC1, MBC2, MBC3

Audio and graphics simulation

Cloud gaming and cartridge‑level save/restore

GitHub: https://github.com/HFO4/gameboy.live

cxk-ball

A JavaScript basketball game featuring the Chinese pop star CXK.

Simple

Normal

Hard

Extreme

Non‑human

GitHub: https://github.com/kasuganosoras/cxk-ball Online demo: https://cxk.ssrr.one/

The list above provides developers with a diverse set of open‑source games to explore, modify, and learn from across many programming languages and platforms.

JavaScriptPythonprogrammingGitHubVimopen-sourcegames
ITPUB
Written by

ITPUB

Official ITPUB account sharing technical insights, community news, and exciting events.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.