About this project

LÖVE (Love2D) is a lightweight, cross-platform framework for creating 2D games using the Lua programming language. It abstracts away platform differences through SDL3 and provides modules for graphics (OpenGL/Vulkan/Metal), audio (OpenAL), physics (Box2D), input handling, and file I/O. The framework follows a minimalist philosophy — no built-in editor or engine overhead — giving developers full control over game structure. Key capabilities evidenced in the repository: - Multi-platform support: Windows, macOS, Linux, Android, iOS with platform-specific build instructions - Modern graphics backends: OpenGL 3.3+, OpenGL ES 3.0+, Vulkan, and Metal - Audio via OpenAL with support for Ogg Vorbis, MP3, FLAC, and tracker formats (ModPlug) - Font rendering with FreeType and harfbuzz for complex text shaping - Physics integration through Box2D - Comprehensive test suite covering all APIs, runnable as a normal LÖVE project - Active community with wiki documentation, forums, Discord, and subreddit - Stable release branches plus experimental features in a separate repository - Nightly builds via GitHub CI, Ubuntu PPA, and Arch AUR The codebase uses CMake for *nix builds, Xcode for Apple platforms, and a separate Android repository. Dependencies include SDL3, Lua/LuaJIT/LLVM-lua, FreeType, harfbuzz, and various media libraries. Contributions are accepted via pull requests after discussion on issues or Discord, with a noted policy against LLM-generated contributions.