// the find
raysan5/raylib
A simple and easy-to-use library to enjoy videogames programming
raylib is a C99 game programming library that wraps OpenGL, audio, input, and math into a single-header-friendly API with no external dependencies. It targets hobbyists, educators, and game jam participants who want to write games in C without wrestling with SDL, GLFW, or engine boilerplate. The 70+ language bindings make it unusually accessible for a C library.
Zero external dependencies — everything is vendored into src/external, which means 'git clone + make' actually works. The rlgl abstraction layer is genuinely useful standalone if you want low-level OpenGL without the full library. Platform coverage is serious: Windows, Linux, macOS, Android, WASM, Raspberry Pi, and RiscV all have CI. The 140+ examples are the real documentation and they're complete, buildable programs — not snippets.
No scene graph, entity system, or retained-mode anything — you're writing your own game loop and state machine from scratch, which is fine for jams but becomes painful on anything over ~5k lines. The 'no documentation, just read the cheatsheet' philosophy breaks down when you hit edge cases in 3D model loading or shader uniforms. The software renderer (rlsw) is brand new and underdocumented — treat it as experimental. Android builds require a specific NDK version and the setup is significantly more painful than the README implies.