Skip to main content

Curated list of awesome libraries and bindings for SDL.

45
GitHub Stars
120
Curated Resources
11
Categories
4 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

Media

  • Deckboy

    SDL3 cue-based video playback and show control for Windows, macOS and Linux

  • FreeRDP

    Remote Desktop Protocol (RDP) client implementation featuring an SDL frontend

  • Lagrange

    GUI client for the Gemini protocol written in C and built with SDL2

  • MLT Multimedia Framework

    Open-source video editing framework utilizing SDL for audio/video playback

  • Moonlight-QT

    Open-source GameStream client for NVIDIA hardware using SDL2 for input and display

  • scrcpy

    Display and control Android devices over USB/Wi-Fi using SDL2 for rendering

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