Build a 2D or 3D game from scratch without learning a complex engine.
Create a game jam entry in a weekend with minimal setup overhead.
Teach graphics programming or game development concepts to beginners.
Prototype interactive visualizations or educational tools that run on Windows, Mac, Linux, and the web.
raylib is a simple and easy-to-use library for building games and interactive graphical applications. It is written in C with a focus on keeping the API minimal and beginner-friendly, avoiding external dependencies entirely. The goal, stated in the README, is to provide a programming-focused library that works across platforms without requiring complex setup. raylib handles window creation, input (keyboard, mouse, gamepad, and touch), 2D and 3D rendering, audio playback, textures, fonts, shaders, and basic physics utilities. Under the hood it uses OpenGL for rendering, but this is abstracted away so developers interact with simple, readable function calls rather than raw graphics API code. The library compiles to a single static library and links without needing additional runtime dependencies. It supports Windows, Linux, macOS, Raspberry Pi, Android, and HTML5 via WebAssembly, making it practical for cross-platform game development. A key design principle is that every feature should be accessible from a single C file without prior configuration. raylib also serves as the foundation for bindings in many other languages, including Python, Lua, Go, Rust, Java, C#, and more, so developers not working in C can still use the library through idiomatic wrappers in their preferred language. When to use it: raylib is a strong choice for learning game programming, building small games and prototypes, teaching graphics concepts, making game jam projects, or any situation where simplicity and cross-platform support matter more than a feature-rich engine. It is intentionally not a full game engine, there is no editor, no scene graph, no asset pipeline, but rather a clean programming library that gives direct control.
Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.