Awesome Open Source
Awesome Open Source

JNGL - Just a Neat Game Library pipeline status

🌐 Website 🏃 Quickstart 🎓 Tutorial 📚 Documentation

An easy to use C++ game library for Linux, Windows, macOS, Android, iOS, Xbox, the Nintendo Switch, and the Web.

Portal Dogs running on the Switch


cmake -Bbuild
cmake --build build



sudo apt-get install libgl1-mesa-dev libfreetype6-dev libfontconfig1-dev libxxf86vm-dev \
libpng-dev libvorbis-dev libopenal-dev cmake g++ \
libwebp-dev git libsdl2-dev


sudo dnf install fontconfig-devel freetype-devel libvorbis-devel libwebp-devel \
cmake SDL2-devel openal-soft-devel gcc-c++

Arch Linux

pacman -Syu --needed cmake gcc sdl2 pkg-config fontconfig libwebp openal libvorbis


MSYS2 / MinGW-w64

Set up MSYS2 and install the following in a MinGW-w64 Win64 Shell:

pacman -Syu --needed mingw-w64-x86_64-gcc mingw-w64-x86_64-openal \
mingw-w64-x86_64-freetype mingw-w64-x86_64-libvorbis mingw-w64-x86_64-libwebp \
mingw-w64-x86_64-dlfcn mingw-w64-x86_64-cmake make mingw-w64-x86_64-gdb \

Visual Studio 2017 or newer


and then open build/jngl.sln.


Use Homebrew to install the build dependencies:

brew install sdl2 freetype libvorbis webp pkg-config cmake


Install the Android SDK and let ANDROID_HOME point to it. In the Android SDK Manager install the NDK build tools. Type the following to run the test app via ADB:

make -C android run

You can also open the android/test folder in Android Studio and build from there.


Generate a Xcode project using CMake:

cmake -Bbuild-ios -GXcode -DCMAKE_TOOLCHAIN_FILE=cmake/iOS.toolchain.cmake -DIOS_PLATFORM=SIMULATOR

Open and build build-ios/jngl.xcodeproj in Xcode.


cmake -Bbuild-uwp -DCMAKE_SYSTEM_NAME=WindowsStore "-DCMAKE_SYSTEM_VERSION=10.0"

and then open build-uwp/jngl.sln.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
C Plus Plus (258,303
Game (83,662
Xcode (12,415
Opengl (9,282
Gamedev (7,483
Game Engine (4,841
Xbox (1,421
Openal (555
Nintendo Switch (491
Game Library (264
Game Engine 2d (129