SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Game development Open-Source Projects
-
Explore resources on Unity, Unreal Engine, and Godot for more.
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
Project mention: The JavaScript Runtime Handbook - Deno, Bun and Node.js in 10 minutes | dev.to | 2025-07-16
Extensibility - Can I hook into the runtime's? Load native binaries? Inject C++ or Rust where it matters? That’s how I built imgui.js, a threaded and sparse set powered C++ GUI framework over dear imgui for Node:
-
Project mention: Iced/Bevy/Dioxus developers debate open source ethics of reuse vs. recognition | news.ycombinator.com | 2025-06-27
-
phaser
Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering.
Project mention: Da Glória ao Caos: como CJS e ESM dividem o JavaScript até hoje | dev.to | 2025-05-25 -
Project mention: Show HN: A backend agnostic Ruby framework for building reactive desktop apps | news.ycombinator.com | 2025-05-09
Very cool project, and well thought with the choice of Raylib or SDL2. But since Raylib can compile to Android (https://github.com/raysan5/raylib/blob/master/examples/Makef...), do you think it could be difficult to add Android as a target platform ?
-
-
BabylonJS
Babylon.js is a powerful, beautiful, simple, and open game and rendering engine packed into a friendly JavaScript framework.
-
Stream
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
-
-
games
:video_game: A list of popular/awesome video games, add-ons, maps, etc. hosted on GitHub. Any genre. Any platform. Any engine.
-
3d-game-shaders-for-beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
-
Cocos2d
Cocos2d-x is a suite of open-source, cross-platform, game-development tools utilized by millions of developers across the globe. Its core has evolved to serve as the foundation for Cocos Creator 1.x & 2.x.
-
-
Project mention: Design Pressure: The Invisible Hand That Shapes Your Code | news.ycombinator.com | 2025-05-26
I disagree.
First and foremost, what if there is not "the" database? What if you have multiple places that store data? For example, a postgres for ACID stuff, something like Kafka/RabbitMQ or similar to easily communicate with other services (or even yourself) - and sure, you could do that in postgres, but it's a trade-off. Then maybe something like redis/memcache for quick lookups/caching, then maybe elasticsearch for indexed search queries, and so on. And you usually also have some http API.
Sure you can say "I just do all with postgres" and honestly, that's often a good choice.
But it shows that it's not where "code (...) really belongs". Even IF you move a lot of logic into your database engine (and you often should), you most of the time will have another API and there will be a connection. Well, unless you use shared database tables with another application for communication.
All you do is pushing it out further to a later point - and often forcefully so.
> It terrifies me to say this, but sooner or later someone is going to cook up a JavaScript database engine that also has web capability, along with a native client-side cache component... and then it'll be curtains for traditional databases.
Not going to happen. Services like https://spacetimedb.com exist. Also, solutions like Spark (where you send your code to the database(s)) exist. And for certain things, they are great. However, it is a trade-off. There is no one-fits-all solution.
-
Project mention: A (not so) small library for terminal based game development | news.ycombinator.com | 2024-07-23
If pygamelib interests you, you might also be interested in Pyxel:
https://github.com/kitao/pyxel
-
GDevelop combines open-source flexibility with powerful no-code features. Their recent AI plugins provide remarkable capabilities:
-
-
I hope that one day we have a tool that can convert any proprietary binary to source code with a single click. It would be so much fun to have an "open source" version of all games. Currently, there are projects like https://github.com/Try/OpenGothic and https://github.com/SFTtech/openage, but these require years of community effort.
-
Bullet
Bullet Physics SDK: real-time collision detection and multi-physics simulation for VR, games, visual effects, robotics, machine learning etc.
Physics and Game Engines: Implement high performance physics with Wasm-compiled versions of well established engines. For instance, Ammo.js is a Wasm version of the popular bullet physics engine written in C++.
-
MonoGame: https://www.monogame.net/
-
Bappa's design is intentionally decoupled. The core packages have zero external dependencies, focusing purely on game simulation logic. The client layer coldbrew integrates with Ebiten for rendering, input handling, and audio.
-
assimp
The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.
Curiously, what people commonly refer to as 'Waterfront OBJ' is merely a tiny subset of that format dealing with polygons.
The format supports e.g. higher order curves and surfaces and apps like Maya or Rhino3D can read and write OBj files containing such data. [1]
Writing a parser for the polygon subset also comes with some caveats.
If your target is a GPU you probably need to care for robust triangulation of n-gons and making per-face-per-vertex data per-vertex on disconnected triangles.
Vice versa, if you are feeding data to an offline renderer you want to absolutely preserves such information.
I believe the tobj Rust crate is one of the few OBJ importers that handles all edge cases. [2] If you think it doesn't, let me know and I will fix that.
This is surprising for people familiar with one but not the other of the requirements of offline- or GPU rendering.
I.e. if you write an OBJ reader this can become an issue, see e.g. an issue I opened here [3].
1. https://paulbourke.net/dataformats/obj/
2. https://docs.rs/tobj/latest/tobj/struct.LoadOptions.html
3. https://github.com/assimp/assimp/issues/3677
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Game development discussion
Game development related posts
-
Unofficial Bevy Cheat Book
-
Dog Walk: Blender Studio's official game project
-
0.32.0 – Atoms, popups, and better SVG support
-
Racing Game with Python + Pygame 🚗
-
Iced/Bevy/Dioxus developers debate open source ethics of reuse vs. recognition
-
GUI in Pure Rust
-
Marble Blast
-
A note from our sponsor - SaaSHub
www.saashub.com | 18 Jul 2025
Index
What are some of the best open-source Game development projects? This list will help you:
# | Project | Stars |
---|---|---|
1 | Godot | 98,996 |
2 | imgui | 66,893 |
3 | bevy | 40,546 |
4 | phaser | 38,184 |
5 | raylib | 27,186 |
6 | egui | 25,819 |
7 | BabylonJS | 24,317 |
8 | libGDX | 24,196 |
9 | games | 23,640 |
10 | 3d-game-shaders-for-beginners | 18,859 |
11 | Cocos2d | 18,620 |
12 | A-Frame | 17,245 |
13 | SpacetimeDB | 17,092 |
14 | pyxel | 16,479 |
15 | GDevelop | 15,277 |
16 | magictools | 14,592 |
17 | openage | 13,702 |
18 | Bullet | 13,535 |
19 | MonoGame | 12,322 |
20 | Ebiten | 12,240 |
21 | assimp | 12,116 |
22 | tiled | 11,857 |
23 | entt | 11,295 |