All episodes

raylib founder Ramon Santamaria - #2 most popular open-source game-engine in the world

raylib creator Ramon Santamaria explains how a library for art students became one of the world’s most popular open-source game engines—and how community, radical simplicity and a portfolio of paid tools sustain it.

Jack Bridger
Episode 12832:57

Ramon Santamaria created raylib to teach real programming to art students who had no previous coding experience. Its functions read almost like instructions—draw rectangle, play sound—and the project grew organically from one course into a game-development community with tens of thousands of members.

The core library remains free and open source. Ramon now builds standalone commercial tools with raylib, using the project’s distribution while keeping the tools useful across Unity, Godot, Unreal and other engines. The result is a rare long-running flywheel between education, community, open infrastructure and a solo software business.

The Q&A below is experimental — extracted from the episode transcript with AI. If you spot a mistake, let us know at jack@scalingdevtools.com.

Why did Ramon create raylib?

He needed to teach game programming to art students with no coding background and found that the available tools assumed too much knowledge. Rather than replace programming with a visual abstraction, he made a small C library whose function names clearly described their effects. Students produced impressive work within a 40–50-hour course, so Ramon continued improving the library until it became a major project in its own right.

Why begin with a low-level library before Unity or Unreal?

raylib exposed the fundamentals: input, textures, drawing, sound and the game loop. When students later moved to a large engine, they understood what its abstractions were doing and could make better performance and design choices. The goal was not initially to compete with those engines, but to give learners a foundation solid enough to use them intelligently.

Why do experienced developers still choose raylib?

Control and enjoyment. A general-purpose engine must support many genres and impose its own project model; when that model stops fitting, the abstraction can be difficult to debug. raylib supplies the essentials and lets developers choose their code structure. That creates more work for a large production, but for an indie game made of input, sprites, state changes and sound, the required layer can remain small and understandable.

Is raylib only for games?

No. Its compact primitives—draw to a screen, read input and play audio—also support simulations, data visualization, emulators, audio trackers and desktop tools. That versatility emerged because the library does not prescribe a high-level game architecture. Ramon himself increasingly used it as the foundation for tool development.

How does the commercial layer work?

The core and its supporting libraries remain free and open. Ramon sells focused applications built with that technology, including sprite-packing and procedural sound-generation tools. They do not require raylib and can serve developers using Unity, Godot or Unreal. The open project supplies credibility and an audience; the paid products solve adjacent jobs without withholding essential engine capability.

How does Ramon decide which paid tools to develop?

As a solo developer, he favors several small products over one large bet. He ships each quickly, observes which attract buyers, then invests further in the strongest. raylib’s Discord, subreddit, YouTube presence and other channels provide an initial distribution network, while useful tools feed attention back into the core project.

What created such an active community?

Ramon spent years being visibly present—sometimes four or five hours a day in social channels. He welcomes new Discord members, answers questions and creates reasons for people to participate. Contributors and a moderator now share more of that work, but direct contact with the creator made an unusual impression and turned a repository into a relationship people wanted to support.

How can one person manage the library, community and eleven tools?

Organization, automation and reusable systems. Ramon keeps written notes and release checklists, runs automated builds across platforms and configurations, and maintains templates that give every new tool the same starting structure. He has even built raylib-based tools for laying out interfaces and generating store artwork. Contributors help maintain the core, though the combined workload remained large alongside university teaching and consulting.

Why is “assume no prior knowledge” a powerful product constraint?

Libraries often encode terminology and concepts that feel obvious only to experienced programmers. Designing from the base forces the creator to make names, first steps and feedback understandable on their own. That is harder for the product team but opens the product to more people. It also lowers the anxiety of starting: users can put something on screen immediately and accept complexity later, when they have a reason to learn it.

What is Ramon’s advice for open-source builders?

Start simple, grow gradually and choose work you genuinely enjoy. Revenue and release milestones can matter later, but enjoyment supplies the endurance to handle bugs, maintenance and years of uncertainty. raylib was not planned as a challenge to the established engines; it survived long enough to become important because the underlying act of building and teaching with it remained rewarding.

Keep listening