Skip to main content

Curated list of awesome libraries and bindings for SDL.

38
GitHub Stars
119
Curated Resources
11
Categories
23 hours ago
Last Refreshed
ExtensionsGUI & UI ToolkitsLanguage Bindings & Wrappers2D & 3D Game EnginesClassic Game Source Ports & Re-ImplementationsEmulators & Media FrontendsAudio Engines & IntegrationRendering & Shader UtilitiesMediaSystem Shims, Portability, & Helper LibrariesTemplates

Use this list with your AI agent

Add the Context Awesome MCP server to Claude, Cursor, or any MCP client, then ask:

"Show me gui & ui toolkits resources from awesome-sdl"

Installation instructions →

What's inside

GUI & UI Toolkits

  • Agar

    Portable GUI toolkit for C/C++ cross-platform apps using SDL as a rendering target

  • cimgui-sdl2

    Auto-generated C bindings for Dear ImGui using the SDL2 backend

  • Dear ImGui

    Industry-standard immediate-mode C++ GUI library for game dev tools with SDL backend

  • GUIslice

    Lightweight embedded GUI in C for touchscreens, using SDL as its desktop simulation target

  • kiss_sdl

    Simple, lightweight C widget toolkit (buttons, textboxes, scrollbars) built for SDL2

  • LVGL

    Embedded system GUI engine with an official desktop SDL simulator driver

Emulators & Media Frontends

  • Amiberry

    Optimized Amiga emulator for ARM and desktop platforms built with SDL2

  • Dolphin Emulator

    GameCube/Wii emulator using SDL for cross-platform controller handling

  • DOSBox-Staging

    Modernized, active fork of DOSBox built heavily on SDL2

  • DuckStation

    PlayStation 1 emulator using SDL2 for audio output and controller mapping

  • Hypseus Singe

    SDL3-based Daphne Laserdisc arcade game emulator

  • MAME

    Arcade machine emulator using SDL to run on Linux, macOS, and BSD systems

Language Bindings & Wrappers

  • BeefLibs SDL2

    Native bindings for the performance-focused Beef programming language

  • BindBC-SDL

    D programming language dynamic bindings for SDL2 and extensions

  • DerelictSDL2

    D language bindings for SDL2

  • go-sdl2

    Go language wrappers for SDL2 and its extension libraries

  • Haskell-sdl2

    High-level, type-safe Haskell bindings for SDL2

  • libsdl4j

    Java Native Access (JNA) bindings for SDL2

Rendering & Shader Utilities

  • bgfx

    Cross-platform, graphics API-agnostic rendering engine that pairs with SDL windowing

  • gl3w

    OpenGL extension loader routinely bundled into SDL boilerplate setups

  • glad

    OpenGL extension loader routinely bundled into SDL boilerplate setups

  • HybridRenderingEngine

    Clustered forward/deferred 3D renderer written in C++ and OpenGL with SDL2

  • Milton

    Open-source endless-canvas painting application utilizing C++ and SDL

  • SDL2_shader

    Unofficial SDL2 extension library allowing custom HLSL/GLSL shaders on SDL renderers

System Shims, Portability, & Helper Libraries

  • Box2D

    2D physics engine commonly paired with SDL rendering pipelines

  • Chipmunk2D

    Fast 2D rigid body physics library with community-maintained SDL render wrappers

  • Circle-libsdl2

    Bare-metal SDL2 shim enabling SDL apps to run on Raspberry Pi with no operating system

  • Cytopia

    Open-source retro city building game engine built on SDL2

  • GGPO

    Peer-to-peer rollback networking SDK frequently paired with SDL for frame-accurate input polling

  • libx11-compat

    X11 compatibility shim built on top of SDL for lightweight environments

2D & 3D Game Engines

  • Castle Game Engine

    Cross-platform 3D and 2D game engine written in Object Pascal using SDL2

  • FNA

    High-performance re-implementation of the Microsoft XNA 4.0 framework using SDL2

  • Godot Engine

    Uses SDL abstractions on specific display platforms and backends

  • LÖVE (Love2D)

    Popular Lua-based 2D game framework using SDL for windowing and events

  • Lumina Engine

    Multiplatform 2D RPG engine designed for PC and homebrew consoles via SDL2

  • Nozomi Engine

    Lightweight 2D/3D C++ game rendering engine built on SDL2

Classic Game Source Ports & Re-Implementations

  • Chocolate Doom

    Conservative source port reproducing the original DOS Doom experience via SDL

  • Crispy Doom

    Limit-removing enhanced-resolution Doom source port built on Chocolate Doom

  • Doom Retro

    Classic, refined Doom source port tailored specifically for Windows using SDL2

  • Fallout 2 CE

    Open-source C++ and SDL engine rewrite for Fallout 2

  • OpenLoco

    Open-source re-implementation of Chris Sawyer's Locomotion using SDL2

  • OpenRCT2

    Open-source re-implementation of RollerCoaster Tycoon 2 using SDL2

Audio Engines & Integration

  • FLAC

    Free Lossless Audio Codec library with SDL integration

  • FluidSynth

    Software synthesizer based on SoundFont 2 specifications with SDL driver support

  • LabSound

    C++ graph-based audio engine (modeled on Web Audio API) with SDL hardware integration

  • miniaudio

    Single-header C audio library that integrates smoothly into SDL audio callbacks

  • SoLoud

    Flexible C++ audio engine with native SDL2 output backends

Showing a sample of 119 resources. View the full list on GitHub →