Awesome Löve
A categorized community-driven collection of high-quality, awesome LÖVE libraries, projects, and resources.
Contents
- 3D
- AI
- Animation
- Camera
- Development
- Drawing
- Entity
- Helpers
- Input
- Lighting
- Math
- Music
- Networking
- OO
- Performance
- Physics
- Platforms
- Publishing
- Serialization
- Shaders
- Testing
- Tweening
- UI
- Utilities
- Tutorials
- IDEs
- Distribution
- Related
3D
3D-centric Libraries
- 3DreamEngine - An awesome 3D engine for LÖVE.
- anim9 - 3D skeletal animation library (design to be used with IQM and IQE).
- Brinevector3D - FFI-enabled vector library for 3D (x,y,z).
- bump-3dpd - A 3D collision detection library for Lua.
- IQE - Inter-Quake Export loader (text).
- IQM - Inter-Quake Model loader (binary).
- love-gltf - Gltf asset loader and test renderer; Supports skeletal animations and morph targets.
- Lovox - Pseudo-3D library for working with voxels.
- g3d - Simple and easy 3D engine for LÖVE.
- Menori - Library for 3D rendering with LÖVE.
AI
Navigation, Decision-Making and AI Libraries
- Jumper - Grid-based pathfinding library.
- Lua-star - Easy and pure Lua A* path finding.
- astar - An other A* library. Any map (grid, point, mesh or infinite map) and support path cost.
- pathfun - Pure Lua library for 2D pathfinding using the funnel algorithm.
- beehive.lua - A functional behavior tree implementation.
- Luafinding - Class-based A* implementation written purely in Lua.
Animation
Animation & Frame-Managing Libraries
- andross - A Lua library for 2D skeletal/bone animations with a Löve backend.
- anim8 - Animation library.
- animx - A featureful Animation library for loading animations from XML files!.
- Aseprite loader - Complete ase/aseprite file loader (no json).
- chiro - Convenience wrapper around Spine.
- Peachy - A parser/renderer for Aseprite animations in LÖVE.
- skeletor - 2D skeletal animation system.
- Walt - Animation library.
- Lump - Adobe Flash animation runtime.
- lovanim - A minimal stateful animation library.
- SYSL-Text - Text animation and automatic wrapping library based on tags.
Camera
Viewport & Camera Libraries
- Brady - Camera library with parallax scrolling.
- cam11 - Camera library that leverages the Transform object introduced in love2d 11.0+.
- Editgrid - Gamera and HUMP compatible scaling grid.
- gamera - Camera system.
- hump.camera - Camera library with window locking and smooth camera movement interpolation.
- parallax - Parallax scrolling with any camera system; seamlessly tile background images.
Development
Development assisting Libraries, that enrich your development experience
- FPSGraph - Small FPS graphing utility.
- debugGraph - Small OO FPS graphing utillity based on FPSGraph.
- Lovebird - Browser-based debug console.
- LoveDebug - Inline console-like debugger utility.
- lurker - Auto-swaps changed Lua files in a running game.
- LÖVE API - The complete API documentation of LÖVE in a Lua table.
- LÖVE Build - GitHub Action for automated cross-platform builds.
- LÖVE TypeScript Definitions - Write LÖVE games with TypeScript.
- lovelier - A LÖVE live reloader with Moonscript support.
- loveprofiler - LoveProfiler is an extremely simple logger and profiler.
- vudu - Broad in-game debugging gui with a console, variable browser/editor, speed controls, and more.
Drawing
Drawing specific Libraries, that simplify the Drawing process
- Artal - A .PSD parsing library for LÖVE.
- Autobatch - Small LÖVE module to automate the use of SpriteBatches.
- center - A simple module to dynamically align and fit content to screens of any size.
- deep - Adds Z axis; allows you to queue actions and draw calls.
- draft - A module for drawing complex shapes.
- grove.draworder - Similar to deep, but you can set a custom sorting method and create multiple, nestable instances.
- Hot particles - "Hot Particles is a particle editor for the LÖVE game framework."
- HSLUV - Lua implementation of HSLuv (a human-friendly alternative to HSL).
- Maid64 - Low resolution scaler for LÖVE.
- Push - A simple resolution-handling library for LÖVE.
- renderplanet - Realistic orthographic planet rendering.
- Resolution Solution - Scale library, that help you add resolution support to your games!
- svglover - Library to import and display simple SVGs in LÖVE.
- SYSL-Pixel - Pixel art focused scaler for graphics, position, screen-captures and shaders.
- Sölar - A fairly simple solar system simulator.
- Tove2d - Animated vector graphics for LÖVE.
- turtle.lua - Turtle graphics library for LÖVE.
- Runtime-TextureAtlas - Texture atlas packer and renderer at runtime; no external tools.
- Export-TextureAtlas - Extends Runtime-TextureAtlas as a commandline tool to export an atlas.
Entity
Entity and Gameobject Managing Libraries
- adorbs - Minimal, Functional Entity Component System.
- Concord - A feature-complete ECS library.
- ecs-lua - ECS Lua is a fast and easy to use ECS (Entity Component System) engine for game development.
- knife.system - Minimalist functional ECS.
- nata - Hybrid OOP/ECS entity management.
- tiny-ecs - Entity Component System for Lua that's simple, flexible, and useful.
Helpers
Game specific Library bundles, that provide reuseable functions
- astray - Astray is a lua based maze, room and dungeon generation library for dungeon crawlers and roguelike video games.
- batteries - Fills out lua's sparse standard library and provides implementations of common algorithms and data structures useful for games.
- cartographer - Small Tiled map loader and drawer.
- clove - A helper library which allows you to quickly loads huge amount of assets.
- grove.color - Blend, convert and interpolate colors using 'color objects'.
- hump - Collection of tools for developing games with LÖVE (Gamestates, Timers/Tweens, Vectors, Classes, Signals, Cameras).
- iffy - A SpriteSheet and Tileset helper library for LÖVE.
- knife - Collection of useful micro-modules for Lua (Class, State Machines, Bind, Chain, Coroutines, Event, Memoize, Entity, Tests, Timer).
- shard - Collection of useful mini modules.
- lovely-windows - A Window/Screen Manager Module for virtual windows.
- love-state-switcher - State switcher class for Lua LÖVE Engine.
- lua-state-machine - Lua Finite State Machine.
- lue - Lue is a LÖVE library that allows you to display hue color effects in your game.
- lume - Collection of functions for Lua, geared towards game development.
- Manami - An improved "reflowprint" with UTF-8, multicolor, and justify support.
- narrator - An Ink narrative scripting language parser and runtime implementation.
- reflowprint - A library designed for alignment of text that is shown one character at a time.
- roomy - Screen management library for LÖVE.
- rotLove - Roguelike Toolkit in LÖVE. A LÖVE/lua port of rot.js.
- YAS - Yet Another Screen manager.
- Scenery - A dead simple scene/state management system.
- ScreenManager - Screen/State Management for the LÖVE framework.
- shack - Shack is a LÖVE library that lets you easily add screen effects such as shake and rotation.
- Simple Tiled Implementation - Tiled map loader and renderer.
- Vivid - Color math, manipulation and conversion library.
- Yonder - A ridiculously easy to use game state management library for LOVE2D.
- GameStateManager - A lightweight, optimized, and easy-to-implement solution for efficient game state management.
Input
Input & Binding Libraries
- baton - Input library for LÖVE that bridges the gap between keyboard and gamepad controls.
- GamepadGuesser - Get the right button icons for gamepads; load updated gamepad db.
- input - Simple and powerful input library. support check operation time, sequence.
- Kazari - Multitouch gesture and input library.
- love-microphone - Simple microphone support for LÖVE.
- LoveKeys - A simple input handeling library that keeps track of things for you.
- Swipe - A simple radial keyboard library.
- tactile - A straightforward and flexible input library.
Lighting
Lighting & Shadow Libraries
- lighter - A performant dynamic light implementation with a simple API.
- Shädows - A Shadows & Lights engine for LÖVE.
- Light World - A lighting model.
- Simple Love Lights - A very simple raycasting light implementation.
- Light - A simple dynamic light implementation.
Math
Math specific Libraries
- Bresenham - Bresenham's line algorithm written in Lua.
- brinevector - Standalone lightweight luajit ffi-accelerated 2D vector library for great performance.
- Cirno's Perfect Math Library - Math/intersection library designed for games.
- delaunay - Delaunay triangulation for convex polygons.
- hump.vector - Powerful 2D vector class.
- MLib - Math and shape-intersection detection library written in Lua. It's aim is to be robust and easy to use.
- nvec - Hump.vector-compatible LuaJIT FFI-accelerated 2D vector library.
- shash - A simple, lightweight spatial hash for Lua.
- vector.lua - A simple vector library based on the PVector class from processing.