951 lines
46 KiB
HTML
951 lines
46 KiB
HTML
<h1 id="awesome-löve-awesome">Awesome Löve <a
|
||
href="https://awesome.re"><img src="https://awesome.re/badge.svg"
|
||
alt="Awesome" /></a></h1>
|
||
<figure>
|
||
<img src="logo.png" alt="Awesome Löve" />
|
||
<figcaption aria-hidden="true">Awesome Löve</figcaption>
|
||
</figure>
|
||
<p>A categorized community-driven collection of high-quality, awesome <a
|
||
href="http://love2d.org">LÖVE</a> libraries, projects, and
|
||
resources.</p>
|
||
<h2 id="contents">Contents</h2>
|
||
<ul>
|
||
<li><a href="#3d">3D</a></li>
|
||
<li><a href="#ai">AI</a></li>
|
||
<li><a href="#animation">Animation</a></li>
|
||
<li><a href="#camera">Camera</a></li>
|
||
<li><a href="#development">Development</a></li>
|
||
<li><a href="#drawing">Drawing</a></li>
|
||
<li><a href="#entity">Entity</a></li>
|
||
<li><a href="#helpers">Helpers</a></li>
|
||
<li><a href="#input">Input</a></li>
|
||
<li><a href="#lighting">Lighting</a></li>
|
||
<li><a href="#math">Math</a></li>
|
||
<li><a href="#music">Music</a></li>
|
||
<li><a href="#networking">Networking</a></li>
|
||
<li><a href="#oo">OO</a></li>
|
||
<li><a href="#performance">Performance</a></li>
|
||
<li><a href="#physics">Physics</a></li>
|
||
<li><a href="#platforms">Platforms</a></li>
|
||
<li><a href="#publishing">Publishing</a></li>
|
||
<li><a href="#serialization">Serialization</a></li>
|
||
<li><a href="#shaders">Shaders</a></li>
|
||
<li><a href="#testing">Testing</a></li>
|
||
<li><a href="#tweening">Tweening</a></li>
|
||
<li><a href="#ui">UI</a></li>
|
||
<li><a href="#utilities">Utilities</a></li>
|
||
<li><a href="#tutorials">Tutorials</a></li>
|
||
<li><a href="#ides">IDEs</a></li>
|
||
<li><a href="#distribution">Distribution</a></li>
|
||
<li><a href="#related">Related</a></li>
|
||
</ul>
|
||
<h2 id="d">3D</h2>
|
||
<p><em>3D-centric Libraries</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/3dreamengine/3DreamEngine">3DreamEngine</a> -
|
||
An awesome 3D engine for LÖVE.</li>
|
||
<li><a href="https://github.com/excessive/anim9">anim9</a> - 3D skeletal
|
||
animation library (design to be used with IQM and IQE).</li>
|
||
<li><a
|
||
href="https://github.com/flamendless/brinevector3D">Brinevector3D</a> -
|
||
FFI-enabled vector library for 3D (x,y,z).</li>
|
||
<li><a href="https://github.com/oniietzschan/bump-3dpd">bump-3dpd</a> -
|
||
A 3D collision detection library for Lua.</li>
|
||
<li><a href="https://github.com/excessive/iqe">IQE</a> - Inter-Quake
|
||
Export loader (text).</li>
|
||
<li><a href="https://github.com/excessive/iqm-exm">IQM</a> - Inter-Quake
|
||
Model loader (binary).</li>
|
||
<li><a href="https://gitlab.com/Alloyed/love-gltf">love-gltf</a> - Gltf
|
||
asset loader and test renderer; Supports skeletal animations and morph
|
||
targets.</li>
|
||
<li><a href="https://github.com/tjakka5/Lovox">Lovox</a> - Pseudo-3D
|
||
library for working with voxels.</li>
|
||
<li><a href="https://github.com/groverburger/g3d">g3d</a> - Simple and
|
||
easy 3D engine for LÖVE.</li>
|
||
<li><a href="https://github.com/rozenmad/Menori">Menori</a> - Library
|
||
for 3D rendering with LÖVE.</li>
|
||
</ul>
|
||
<h2 id="ai">AI</h2>
|
||
<p><em>Navigation, Decision-Making and AI Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/Yonaba/Jumper">Jumper</a> - Grid-based
|
||
pathfinding library.</li>
|
||
<li><a href="https://github.com/wesleywerner/lua-star">Lua-star</a> -
|
||
Easy and pure Lua A* path finding.</li>
|
||
<li><a href="https://github.com/xiejiangzhi/astar">astar</a> - An other
|
||
A* library. Any map (grid, point, mesh or infinite map) and support path
|
||
cost.</li>
|
||
<li><a href="https://codeberg.org/apicici/pathfun">pathfun</a> - Pure
|
||
Lua library for 2D pathfinding using the funnel algorithm.</li>
|
||
<li><a href="https://github.com/drhayes/beehive.lua">beehive.lua</a> - A
|
||
functional behavior tree implementation.</li>
|
||
<li><a href="https://github.com/GlorifiedPig/Luafinding">Luafinding</a>
|
||
- Class-based A* implementation written purely in Lua.</li>
|
||
<li><a href="https://github.com/Nrosa01/LOVElyTrees">LÖVElyTrees</a> -
|
||
Fully featured behaviour tree implementation with tree rendering.</li>
|
||
</ul>
|
||
<h2 id="animation">Animation</h2>
|
||
<p><em>Animation & Frame-Managing Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/pfirsich/andross">andross</a> - A Lua
|
||
library for 2D skeletal/bone animations with a Löve backend.</li>
|
||
<li><a href="https://github.com/kikito/anim8">anim8</a> - Animation
|
||
library.</li>
|
||
<li><a href="https://github.com/YoungNeer/animx">animx</a> - A
|
||
featureful Animation library for loading animations from XML
|
||
files!.</li>
|
||
<li><a href="https://github.com/elloramir/love-ase">Aseprite loader</a>
|
||
- Complete ase/aseprite file loader (no json).</li>
|
||
<li><a href="https://github.com/bjornbytes/chiro">chiro</a> -
|
||
Convenience wrapper around <a
|
||
href="http://esotericsoftware.com">Spine</a>.</li>
|
||
<li><a href="https://github.com/josh-perry/peachy">Peachy</a> - A
|
||
parser/renderer for Aseprite animations in LÖVE.</li>
|
||
<li><a href="https://github.com/pelevesque/skeletor">skeletor</a> - 2D
|
||
skeletal animation system.</li>
|
||
<li><a href="https://github.com/davisdude/Walt">Walt</a> - Animation
|
||
library.</li>
|
||
<li><a href="https://github.com/sixFingers/lump">Lump</a> - Adobe Flash
|
||
animation runtime.</li>
|
||
<li><a href="https://github.com/patrixr/love-animation">lovanim</a> - A
|
||
minimal stateful animation library.</li>
|
||
<li><a href="https://github.com/SystemLogoff/SYSL-Text">SYSL-Text</a> -
|
||
Text animation and automatic wrapping library based on tags.</li>
|
||
</ul>
|
||
<h2 id="camera">Camera</h2>
|
||
<p><em>Viewport & Camera Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/davisdude/Brady">Brady</a> - Camera
|
||
library with parallax scrolling.</li>
|
||
<li><a href="https://notabug.org/pgimeno/cam11">cam11</a> - Camera
|
||
library that leverages the Transform object introduced in love2d
|
||
11.0+.</li>
|
||
<li><a href="https://github.com/bakpakin/Editgrid">Editgrid</a> - Gamera
|
||
and HUMP compatible scaling grid.</li>
|
||
<li><a href="https://github.com/kikito/gamera">gamera</a> - Camera
|
||
system.</li>
|
||
<li><a
|
||
href="https://hump.readthedocs.io/en/latest/camera.html">hump.camera</a>
|
||
- Camera library with window locking and smooth camera movement
|
||
interpolation.</li>
|
||
<li><a href="https://github.com/idbrii/love-parallax">parallax</a> -
|
||
Parallax scrolling with any camera system; seamlessly tile background
|
||
images.</li>
|
||
</ul>
|
||
<h2 id="development">Development</h2>
|
||
<p><em>Development assisting Libraries, that enrich your development
|
||
experience</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/icrawler/FPSGraph">FPSGraph</a> - Small
|
||
FPS graphing utility.</li>
|
||
<li><a
|
||
href="https://github.com/Mechazawa/Love-Debug-Graph">debugGraph</a> -
|
||
Small OO FPS graphing utillity based on FPSGraph.</li>
|
||
<li><a href="https://github.com/rxi/lovebird">Lovebird</a> -
|
||
Browser-based debug console.</li>
|
||
<li><a href="https://github.com/flamendless/lovedebug">LoveDebug</a> -
|
||
Inline console-like debugger utility.</li>
|
||
<li><a href="https://github.com/rxi/lurker">lurker</a> - Auto-swaps
|
||
changed Lua files in a running game.</li>
|
||
<li><a href="https://github.com/love2d-community/love-api">LÖVE API</a>
|
||
- The complete API documentation of LÖVE in a Lua table.</li>
|
||
<li><a href="https://github.com/nhartland/love-build">LÖVE Build</a> -
|
||
GitHub Action for automated cross-platform builds.</li>
|
||
<li><a
|
||
href="https://github.com/hazzard993/love-typescript-definitions">LÖVE
|
||
TypeScript Definitions</a> - Write LÖVE games with TypeScript.</li>
|
||
<li><a href="https://github.com/patrixr/lovelier">lovelier</a> - A LÖVE
|
||
live reloader with Moonscript support.</li>
|
||
<li><a href="https://github.com/dknight/loveprofiler">loveprofiler</a> -
|
||
LoveProfiler is an extremely simple logger and profiler.</li>
|
||
<li><a href="https://github.com/deltadaedalus/vudu">vudu</a> - Broad
|
||
in-game debugging gui with a console, variable browser/editor, speed
|
||
controls, and more.</li>
|
||
</ul>
|
||
<h2 id="drawing">Drawing</h2>
|
||
<p><em>Drawing specific Libraries, that simplify the Drawing
|
||
process</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/unXedDani/Artal">Artal</a> - A .PSD
|
||
parsing library for LÖVE.</li>
|
||
<li><a href="https://github.com/rxi/autobatch">Autobatch</a> - Small
|
||
LÖVE module to automate the use of SpriteBatches.</li>
|
||
<li><a href="https://github.com/S-Walrus/center">center</a> - A simple
|
||
module to dynamically align and fit content to screens of any size.</li>
|
||
<li><a href="https://github.com/Nikaoto/deep">deep</a> - Adds Z axis;
|
||
allows you to queue actions and draw calls.</li>
|
||
<li><a href="https://github.com/pelevesque/draft">draft</a> - A module
|
||
for drawing complex shapes.</li>
|
||
<li><a
|
||
href="https://github.com/FloatingBanana/Grove/blob/master/grove/draworder.lua">grove.draworder</a>
|
||
- Similar to deep, but you can set a custom sorting method and create
|
||
multiple, nestable instances.</li>
|
||
<li><a href="https://github.com/ReFreezed/HotParticles">Hot
|
||
particles</a> - “Hot Particles is a particle editor for the LÖVE game
|
||
framework.”</li>
|
||
<li><a href="https://github.com/hsluv/hsluv-lua">HSLUV</a> - Lua
|
||
implementation of HSLuv (a human-friendly alternative to HSL).</li>
|
||
<li><a href="https://github.com/adekto/maid64">Maid64</a> - Low
|
||
resolution scaler for LÖVE.</li>
|
||
<li><a href="https://github.com/Ulydev/push">Push</a> - A simple
|
||
resolution-handling library for LÖVE.</li>
|
||
<li><a href="https://github.com/meric/renderplanet/">renderplanet</a> -
|
||
Realistic orthographic planet rendering.</li>
|
||
<li><a
|
||
href="https://github.com/grif-on/love2d_resolution_solution">Resolution
|
||
Solution</a> - Scale library, that help you add resolution support to
|
||
your games!</li>
|
||
<li><a href="https://github.com/Oval-Tutu/shove">Shöve</a> - A powerful
|
||
resolution-handler and rendering library for LÖVE.</li>
|
||
<li><a href="https://github.com/globalcitizen/svglover">svglover</a> -
|
||
Library to import and display simple SVGs in LÖVE.</li>
|
||
<li><a href="https://github.com/SystemLogoff/Sysl-Pixel">SYSL-Pixel</a>
|
||
- Pixel art focused scaler for graphics, position, screen-captures and
|
||
shaders.</li>
|
||
<li><a href="https://github.com/JanWerder/soelar">Sölar</a> - A fairly
|
||
simple solar system simulator.</li>
|
||
<li><a href="https://github.com/poke1024/tove2d">Tove2d</a> - Animated
|
||
vector graphics for LÖVE.</li>
|
||
<li><a href="https://github.com/arthurealike/turtle.lua">turtle.lua</a>
|
||
- Turtle graphics library for LÖVE.</li>
|
||
<li><a
|
||
href="https://github.com/EngineerSmith/Runtime-TextureAtlas">Runtime-TextureAtlas</a>
|
||
- Texture atlas packer and renderer at runtime; no external tools.</li>
|
||
<li><a
|
||
href="https://github.com/EngineerSmith/Export-TextureAtlas">Export-TextureAtlas</a>
|
||
- Extends Runtime-TextureAtlas as a commandline tool to export an
|
||
atlas.</li>
|
||
</ul>
|
||
<h2 id="entity">Entity</h2>
|
||
<p><em>Entity and Gameobject Managing Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/JosephShering/adorbs">adorbs</a> -
|
||
Minimal, Functional Entity Component System.</li>
|
||
<li><a href="https://github.com/Tjakka5/Concord">Concord</a> - A
|
||
feature-complete ECS library.</li>
|
||
<li><a href="https://github.com/nidorx/ecs-lua">ecs-lua</a> - ECS Lua is
|
||
a fast and easy to use ECS (Entity Component System) engine for game
|
||
development.</li>
|
||
<li><a href="https://github.com/BlackMATov/evolved.lua">evolved.lua</a>
|
||
- Evolved ECS (Entity-Component-System) for Lua.</li>
|
||
<li><a
|
||
href="https://github.com/airstruck/knife/blob/master/readme/system.md">knife.system</a>
|
||
- Minimalist functional ECS.</li>
|
||
<li><a href="https://github.com/tesselode/nata">nata</a> - Hybrid
|
||
OOP/ECS entity management.</li>
|
||
<li><a href="https://github.com/bakpakin/tiny-ecs">tiny-ecs</a> - Entity
|
||
Component System for Lua that’s simple, flexible, and useful.</li>
|
||
</ul>
|
||
<h2 id="helpers">Helpers</h2>
|
||
<p><em>Game specific Library bundles, that provide reuseable
|
||
functions</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/SiENcE/astray">astray</a> - Astray is a
|
||
lua based maze, room and dungeon generation library for dungeon crawlers
|
||
and roguelike video games.</li>
|
||
<li><a href="https://github.com/1bardesign/batteries/">batteries</a> -
|
||
Fills out lua’s sparse standard library and provides implementations of
|
||
common algorithms and data structures useful for games.</li>
|
||
<li><a href="https://github.com/tesselode/cartographer">cartographer</a>
|
||
- Small Tiled map loader and drawer.</li>
|
||
<li><a href="https://github.com/YoungNeer/clove">clove</a> - A helper
|
||
library which allows you to quickly loads huge amount of assets.</li>
|
||
<li><a
|
||
href="https://github.com/FloatingBanana/Grove/blob/master/grove/color.lua">grove.color</a>
|
||
- Blend, convert and interpolate colors using ‘color objects’.</li>
|
||
<li><a href="https://github.com/HDictus/hump">hump</a> - Collection of
|
||
tools for developing games with LÖVE (Gamestates, Timers/Tweens,
|
||
Vectors, Classes, Signals, Cameras).</li>
|
||
<li><a href="https://github.com/YoungNeer/iffy">iffy</a> - A SpriteSheet
|
||
and Tileset helper library for LÖVE.</li>
|
||
<li><a href="https://github.com/airstruck/knife">knife</a> - Collection
|
||
of useful micro-modules for Lua (Class, State Machines, Bind, Chain,
|
||
Coroutines, Event, Memoize, Entity, Tests, Timer).</li>
|
||
<li><a href="https://github.com/MineGame159/shard">shard</a> -
|
||
Collection of useful mini modules.</li>
|
||
<li><a
|
||
href="https://github.com/flamendless/lovely-windows">lovely-windows</a>
|
||
- A Window/Screen Manager Module for virtual windows.</li>
|
||
<li><a
|
||
href="https://github.com/nekromoff/love-state-switcher">love-state-switcher</a>
|
||
- State switcher class for Lua LÖVE Engine.</li>
|
||
<li><a
|
||
href="https://github.com/kyleconroy/lua-state-machine">lua-state-machine</a>
|
||
- Lua Finite State Machine.</li>
|
||
<li><a href="https://github.com/Ulydev/lue">lue</a> - Lue is a LÖVE
|
||
library that allows you to display hue color effects in your game.</li>
|
||
<li><a href="https://github.com/rxi/lume/">lume</a> - Collection of
|
||
functions for Lua, geared towards game development.</li>
|
||
<li><a
|
||
href="https://github.com/MikuAuahDark/NPad93/blob/master/manami.lua">Manami</a>
|
||
- An improved “reflowprint” with UTF-8, multicolor, and justify
|
||
support.</li>
|
||
<li><a href="https://github.com/astrochili/narrator">narrator</a> - An
|
||
Ink narrative scripting language parser and runtime implementation.</li>
|
||
<li><a href="https://github.com/josefnpat/reflowprint">reflowprint</a> -
|
||
A library designed for alignment of text that is shown one character at
|
||
a time.</li>
|
||
<li><a href="https://github.com/tesselode/roomy">roomy</a> - Screen
|
||
management library for LÖVE.</li>
|
||
<li><a href="https://github.com/paulofmandown/rotLove">rotLove</a> -
|
||
Roguelike Toolkit in LÖVE. A LÖVE/lua port of rot.js.</li>
|
||
<li><a href="https://github.com/kithf/yas">YAS</a> - Yet Another Screen
|
||
manager.</li>
|
||
<li><a href="https://github.com/KINGTUT10101/SceneMan">SceneMan</a> - A
|
||
simple, but powerful scene/gamestate manager that uses a stack, allowing
|
||
you to run multiple scenes at once.</li>
|
||
<li><a href="https://github.com/paltze/scenery">Scenery</a> - A dead
|
||
simple scene/state management system.</li>
|
||
<li><a href="https://github.com/rm-code/screenmanager">ScreenManager</a>
|
||
- Screen/State Management for the LÖVE framework.</li>
|
||
<li><a href="https://github.com/Ulydev/shack">shack</a> - Shack is a
|
||
LÖVE library that lets you easily add screen effects such as shake and
|
||
rotation.</li>
|
||
<li><a
|
||
href="https://github.com/karai17/Simple-Tiled-Implementation">Simple
|
||
Tiled Implementation</a> - Tiled map loader and renderer.</li>
|
||
<li><a href="https://github.com/WetDesertRock/vivid">Vivid</a> - Color
|
||
math, manipulation and conversion library.</li>
|
||
<li><a href="https://github.com/thenerdie/Yonder">Yonder</a> - A
|
||
ridiculously easy to use game state management library for LOVE2D.</li>
|
||
<li><a
|
||
href="https://github.com/GwyrddGlas/GameStateManager">GameStateManager</a>
|
||
- A lightweight, optimized, and easy-to-implement solution for efficient
|
||
game state management.</li>
|
||
<li><a href="https://github.com/Miisan-png/Love-Dialogue">Love
|
||
dialogue</a> - Simple to use Dialogue Library for Love2d with custom
|
||
scripting language for dialogues .</li>
|
||
</ul>
|
||
<h2 id="input">Input</h2>
|
||
<p><em>Input & Binding Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/tesselode/baton">baton</a> - Input
|
||
library for LÖVE that bridges the gap between keyboard and gamepad
|
||
controls.</li>
|
||
<li><a
|
||
href="https://github.com/idbrii/love-gamepadguesser">GamepadGuesser</a>
|
||
- Get the right button icons for gamepads; load updated gamepad db.</li>
|
||
<li><a href="https://github.com/xiejiangzhi/input">input</a> - Simple
|
||
and powerful input library. support check operation time, sequence.</li>
|
||
<li><a href="https://github.com/MikuAuahDark/Kazari">Kazari</a> -
|
||
Multitouch gesture and input library.</li>
|
||
<li><a
|
||
href="https://github.com/LPGhatguy/love-microphone">love-microphone</a>
|
||
- Simple microphone support for LÖVE.</li>
|
||
<li><a href="https://github.com/SpaceCat-Chan/LoveKeys">LoveKeys</a> - A
|
||
simple input handeling library that keeps track of things for you.</li>
|
||
<li><a href="https://github.com/zombrodo/swipe">Swipe</a> - A simple
|
||
radial keyboard library.</li>
|
||
<li><a href="https://github.com/tesselode/tactile">tactile</a> - A
|
||
straightforward and flexible input library.</li>
|
||
</ul>
|
||
<h2 id="lighting">Lighting</h2>
|
||
<p><em>Lighting & Shadow Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/a13X-B/bitumbra">bitumbra</a> - GPU
|
||
accelerated many lights 2D shadows.</li>
|
||
<li><a href="https://github.com/speakk/lighter">lighter</a> - A
|
||
performant dynamic light implementation with a simple API.</li>
|
||
<li><a href="https://github.com/matiasah/shadows">Shädows</a> - A
|
||
Shadows & Lights engine for LÖVE.</li>
|
||
<li><a href="https://github.com/tanema/light_world.lua">Light World</a>
|
||
- A lighting model.</li>
|
||
<li><a href="https://github.com/dylhunn/simple-love-lights">Simple Love
|
||
Lights</a> - A very simple raycasting light implementation.</li>
|
||
<li><a href="https://github.com/xiejiangzhi/light">Light</a> - A simple
|
||
dynamic light implementation.</li>
|
||
</ul>
|
||
<h2 id="math">Math</h2>
|
||
<p><em>Math specific Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/rm-code/Bresenham">Bresenham</a> -
|
||
Bresenham’s line algorithm written in Lua.</li>
|
||
<li><a
|
||
href="https://github.com/novemberisms/brinevector">brinevector</a> -
|
||
Standalone lightweight luajit ffi-accelerated 2D vector library for
|
||
great performance.</li>
|
||
<li><a href="https://github.com/excessive/cpml">Cirno’s Perfect Math
|
||
Library</a> - Math/intersection library designed for games.</li>
|
||
<li><a href="https://github.com/Yonaba/delaunay">delaunay</a> - Delaunay
|
||
triangulation for convex polygons.</li>
|
||
<li><a
|
||
href="https://hump.readthedocs.io/en/latest/vector.html">hump.vector</a>
|
||
- Powerful 2D vector class.</li>
|
||
<li><a href="https://github.com/a13X-B/loaded_dice">loaded_dice</a> -
|
||
Walker-Vose alias method implementation (loaded dice-like RNG) useful
|
||
for rolling loot tables, etc.</li>
|
||
<li><a href="https://github.com/davisdude/mlib">MLib</a> - Math and
|
||
shape-intersection detection library written in Lua. It’s aim is to be
|
||
robust and easy to use.</li>
|
||
<li><a
|
||
href="https://github.com/MikuAuahDark/NPad93/blob/master/nvec.lua">nvec</a>
|
||
- Hump.vector-compatible LuaJIT FFI-accelerated 2D vector library.</li>
|
||
<li><a href="https://github.com/rxi/shash">shash</a> - A simple,
|
||
lightweight spatial hash for Lua.</li>
|
||
<li><a href="https://github.com/themousery/vector.lua">vector.lua</a> -
|
||
A simple vector library based on the PVector class from processing.</li>
|
||
<li><a href="https://github.com/DUznanski/vornmath">Vornmath</a> - The
|
||
most comprehensive small vector & matrix, complex number, and
|
||
quaternion library for Lua.</li>
|
||
<li><a href="https://github.com/dknight/polysec">polysec</a> - A
|
||
performant and lightweight library to detect polygon and rectangle
|
||
intersections.</li>
|
||
</ul>
|
||
<h2 id="music">Music</h2>
|
||
<p><em>Music related libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/superzazu/denver.lua">denver</a> - A
|
||
Löve custom waveform generation library.</li>
|
||
<li><a href="https://github.com/rxi/lovebpm">lovebpm</a> - A LÖVE
|
||
library for syncing events to the BPM of an audio track.</li>
|
||
<li><a href="https://github.com/tesselode/ripple">ripple</a> - An audio
|
||
manager with tagging support.</li>
|
||
<li><a href="https://github.com/Ulydev/wave">wave</a> - A sound manager
|
||
with audio parsing and rhythm functionalities.</li>
|
||
</ul>
|
||
<h2 id="networking">Networking</h2>
|
||
<p><em>Networking & Online-Play Libraries</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/bartbes/love-misc-libs/tree/master/grease">Grease</a>
|
||
- Networking library intended to make networking easy for lovers (TCP,
|
||
UDP, Enet). (IPv6)</li>
|
||
<li><a href="https://github.com/josefnpat/LoverNet">LoverNet</a> - A
|
||
networking library that leverages bitser and enet. (IPv4)</li>
|
||
<li><a href="https://github.com/Overtorment/NoobHub">NoobHub</a> -
|
||
OpenSource multiplayer and network messaging. (IPv6)</li>
|
||
<li><a href="https://github.com/camchenry/sock.lua">Sock.lua</a> - A Lua
|
||
networking library for LÖVE games. (IPv4)</li>
|
||
<li><a href="https://github.com/holywyvern/love-ws">löve-ws</a> - A
|
||
websocket client and server library.</li>
|
||
<li><a
|
||
href="https://github.com/flaribbit/love2d-lua-websocket">love2d-lua-websocket</a>
|
||
- A simple event-driven websocket client library. (IPv4)</li>
|
||
<li><a href="https://github.com/elloramir/fetch-lua">fetch-lua</a> - An
|
||
HTTPS/HTTP requests library made only with luajjit.</li>
|
||
</ul>
|
||
<h2 id="oo">OO</h2>
|
||
<p><em>Object Orientation Libraries that support <a
|
||
href="https://github.com/bartbes/Class-Commons">Class-Commons</a></em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/Yonaba/30log">30log</a> - Minified
|
||
framework for object-orientation in Lua. It features named (and unnamed)
|
||
classes, single inheritance and a basic support for mixins.</li>
|
||
<li><a href="https://github.com/rxi/classic/">classic</a> - Tiny class
|
||
module for Lua. Attempts to stay simple and provide decent performance
|
||
by avoiding unnecessary over-abstraction.</li>
|
||
<li><a
|
||
href="https://hump.readthedocs.io/en/latest/class.html">hump.class</a> -
|
||
Small, fast class/prototype implementation with multiple inheritance
|
||
(class-commons).</li>
|
||
<li><a
|
||
href="https://github.com/airstruck/knife/blob/master/readme/base.md">knife.base</a>
|
||
- Extremely minimal base class providing single inheritance and
|
||
constructors.</li>
|
||
<li><a href="https://github.com/kikito/middleclass">middleclass</a> -
|
||
Simple OOP library for Lua; has inheritance, metamethods (operators),
|
||
class variables and weak mixin support (class-commons).</li>
|
||
<li><a href="https://github.com/megagrump/muun">muun</a> - Moonscript
|
||
compatible class implementation.</li>
|
||
<li><a href="https://github.com/novafacing/selene">selene</a> - Project
|
||
template for writing games in Moonscript instead of Lua without
|
||
precompiling.</li>
|
||
<li><a
|
||
href="https://github.com/Virus01Official/Object-Library">Object-Library</a>
|
||
- ObjectLibrary is a simple library for the LÖVE2D game engine that
|
||
allows users to create objects with collision detection and optional
|
||
textures.</li>
|
||
<li><a href="https://github.com/DevonPalma/LowerClass">LowerClass</a> -
|
||
A MiddleClass Inspired library with extended features.</li>
|
||
</ul>
|
||
<h2 id="performance">Performance</h2>
|
||
<p><em>Performance measurement tools</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/EngineerSmith/AppleCake">AppleCake</a> -
|
||
Profiling library for LÖVE, with detailed profiling and thread
|
||
support.</li>
|
||
<li><a href="https://github.com/pfirsich/jprof">jprof</a> - Profiling
|
||
library/tool for LÖVE.</li>
|
||
<li><a href="https://github.com/Polynominal/Piefiller">Piefiller</a> -
|
||
Graphical profiler for LÖVE.</li>
|
||
<li><a
|
||
href="https://gist.github.com/rm-code/383c98a6af04652ed9f39b7ae536bcc5">ProFi</a>
|
||
- A simple lua profiler that works with LuaJIT and prints a pretty
|
||
report file in columns.</li>
|
||
</ul>
|
||
<h2 id="physics">Physics</h2>
|
||
<p><em>Collision Detection & Physics Wrappers</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/HDictus/breezefield">breezefield</a> - A
|
||
lightweight and easy love.physics wrapper (windfield alternative).</li>
|
||
<li><a href="https://github.com/kikito/bump.lua">Bump</a> - Collision
|
||
detection library for Lua.</li>
|
||
<li><a href="https://hc.readthedocs.io/en/latest/">HC</a> - Collision
|
||
detection with arbitrary polygons; allows rotation of objects.</li>
|
||
<li><a href="https://github.com/exezin/loveblobs">loveblobs</a> - A
|
||
softbody library with support for both dynamic and static arbitrary
|
||
softbodies.</li>
|
||
<li><a href="https://github.com/erinmaus/slick/">slick</a> - A simple to
|
||
use polygon collision library inspired by bump.lua.</li>
|
||
<li><a href="https://github.com/Aweptimum/Strike">Strike</a> - 2D
|
||
collision detection library. Extendable, based on
|
||
Separating-Axis-Theorem.</li>
|
||
</ul>
|
||
<h2 id="platforms">Platforms</h2>
|
||
<p><em>Ports for Platforms other than the ones officially supported by
|
||
LÖVE</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/rxi/lovedos">LoveDos</a> - A Lua
|
||
framework for 2D DOS games, implementing a subset of the LÖVE API.</li>
|
||
<li><a href="https://bitbucket.org/T-BoneISS/l-veftw">LoveFTW</a> -
|
||
Work-in-progress port to Windows phone 8.1.</li>
|
||
<li><a href="https://github.com/lovebrew/lovepotion">LÖVE Potion</a> -
|
||
Unofficial implementation of the LÖVE for Nintendo (3DS, Switch and Wii
|
||
U) Homebrew.</li>
|
||
<li><a href="https://github.com/LukeZGD/LOVE-WrapLua">LOVE-WrapLua</a> -
|
||
A small and simple wrapper for OneLua, lpp-vita, and Lua Player
|
||
PS3.</li>
|
||
<li><a href="https://github.com/Davidobot/love.js">Love.js</a> - LÖVE
|
||
ported to the web using Emscripten.</li>
|
||
<li><a href="https://github.com/bjornbytes/lovr">LÖVR</a> - LÖVE for
|
||
virtual reality devices.</li>
|
||
</ul>
|
||
<h2 id="publishing">Publishing</h2>
|
||
<p><em>Guides to distributing LÖVE games in 3rd party stores</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/popey/love-snap-template">Love-Snap-Template</a>
|
||
- A template for packaging LÖVE games for distribution in the Snappy
|
||
Store.</li>
|
||
<li><a href="https://github.com/AppImage/AppImageKit">AppImageKit</a> -
|
||
Using AppImageKit you can package LÖVE games as AppImages that run on
|
||
common Linux-based operating systems, such as RHEL, CentOS, Ubuntu,
|
||
Fedora, debian and derivatives; one game = one file.</li>
|
||
</ul>
|
||
<h2 id="serialization">Serialization</h2>
|
||
<p><em>Save Game & Storage Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/flamendless/arson.lua">arson</a> -
|
||
Companion library for registering custom data types that can be encoded
|
||
and decoded by json.lua.</li>
|
||
<li><a href="https://github.com/bakpakin/binser">binser</a> -
|
||
Customizable Lua Serializer.</li>
|
||
<li><a href="https://github.com/gvx/bitser">bitser</a> - Serializes and
|
||
deserializes Lua values with LuaJIT.</li>
|
||
<li><a href="https://github.com/excessive/cdata">cdata</a> - Serialize
|
||
between Lua data and C data using LuaJIT’s FFI.</li>
|
||
<li><a
|
||
href="https://github.com/airstruck/knife/blob/master/readme/serialize.md">knife.serialize</a>
|
||
- Serialize data as a Lua script.</li>
|
||
<li><a href="https://github.com/gvx/Lady">Lady</a> - Saving and loading
|
||
savegames; based on Ser.</li>
|
||
<li><a href="https://github.com/megagrump/moonblob">moonblob</a> -
|
||
Binary serialization and data parsing library.</li>
|
||
<li><a href="https://github.com/gvx/Ser">Ser</a> - Fast, robust,
|
||
richly-featured table serialization library for Lua.</li>
|
||
<li><a href="https://github.com/gvx/Smallfolk">Smallfolk</a> - A fast,
|
||
robust, secure, richly-featured table serialization library for
|
||
Lua.</li>
|
||
<li><a href="https://github.com/bjornbytes/trickle">trickle</a> - A
|
||
bitstream library focused on high compression for use in
|
||
networking.</li>
|
||
</ul>
|
||
<h2 id="shaders">Shaders</h2>
|
||
<p><em>GLSL related Libraries</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/tsteinholz/LoveShaderConverter">LoveShaderConverter</a>
|
||
- Convert Shadertoy Shader files to LÖVE GLSL Files with handy utilities
|
||
for infinite purposes.</li>
|
||
<li><a
|
||
href="https://github.com/MikuAuahDark/NPad93/tree/master/ngrading">ngrading</a>
|
||
- Simple color grading library.</li>
|
||
<li><a
|
||
href="http://love2d.org/forums/viewtopic.php?f=5&t=80885">Shadertoy
|
||
viewer</a> - Run code copied from shadertoy directly or output the
|
||
converted code to a LÖVE shader.</li>
|
||
<li><a href="https://github.com/vrld/moonshine">Moonshine</a> -
|
||
Repository of common post-processing effects like blur, vignette,
|
||
color-grading, etc.</li>
|
||
<li><a href="https://github.com/idbrii/love-shaderscan">ShaderScan</a> -
|
||
Adds hot reload, includes, and better error messages for faster shader
|
||
iteration.</li>
|
||
</ul>
|
||
<h2 id="testing">Testing</h2>
|
||
<p><em>Libraries and Tools for Unit Testing</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/Olivine-Labs/busted">busted</a> - Simple
|
||
unit-testing framework with customizable assertions.</li>
|
||
<li><a
|
||
href="https://github.com/airstruck/knife/blob/master/readme/test.md">knife.test</a>
|
||
- Fixture-free test framework.</li>
|
||
<li><a href="https://github.com/Olivine-Labs/luassert">Luassert</a> -
|
||
Extends <code>assert()</code> with additional, customizable tests.</li>
|
||
<li><a href="https://github.com/silentbicycle/lunatest">Lunatest</a> -
|
||
xUnit-style randomized unit testing framework.</li>
|
||
<li><a href="https://github.com/bjornbytes/lust">lust</a> - Minimal test
|
||
framework.</li>
|
||
<li><a href="http://gvvaughan.github.io/specl/">Specl</a> - Behavior
|
||
Driven Development (BDD) tool.</li>
|
||
<li><a href="http://norman.github.io/telescope/">Telescope</a> -
|
||
Highly-customizable BDD-style testing library.</li>
|
||
</ul>
|
||
<h2 id="tweening">Tweening</h2>
|
||
<p><em>Smoothing & Timer Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/rxi/flux">Flux</a> - A fast, lightweight
|
||
tweening library for Lua.</li>
|
||
<li><a
|
||
href="https://hump.readthedocs.io/en/latest/timer.html">hump.timer</a> -
|
||
Timer and tweening library with flexible tweening methods.</li>
|
||
<li><a
|
||
href="https://github.com/airstruck/knife/blob/master/readme/timer.md">knife.timer</a>
|
||
- Create timers and tweens with ease.</li>
|
||
<li><a
|
||
href="https://github.com/MikuAuahDark/NPad93/blob/master/nanite.lua">NAniTe</a>
|
||
- Timeline-based animation system that supports forward and backward
|
||
update.</li>
|
||
<li><a href="https://github.com/rxi/tick">tick</a> - Lua module for
|
||
delaying function calls.</li>
|
||
<li><a href="https://github.com/kikito/tween.lua">tween.lua</a> -
|
||
Tweening/Easing/Interpolating functions for Lua inspired on jQuery’s
|
||
animate method.</li>
|
||
</ul>
|
||
<h2 id="ui">UI</h2>
|
||
<p><em>User Interface Libraries</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/wilhantian/catui">CatUI</a> - A very
|
||
light-weight GUI library for LÖVE.</li>
|
||
<li><a href="https://codeberg.org/apicici/cimgui-love">cimgui-love</a> -
|
||
LÖVE module for Dear ImGui obtained by wrapping cimgui (programmatically
|
||
generated C-api) using LuaJIT FFI, easy to update to the latest Dear
|
||
Imgui version.</li>
|
||
<li><a href="https://github.com/tavuntu/gooi">GOOi</a> -
|
||
Android-oriented GUI library.</li>
|
||
<li><a href="https://notabug.org/pgimeno/Gspot">Gspöt</a> - A stateful
|
||
GUI lib for LÖVE.</li>
|
||
<li><a href="https://gitlab.com/Alloyed/hanker">Hanker</a> - Maximalist
|
||
immediate mode-ish UI elements; gamepad-friendly.</li>
|
||
<li><a href="https://github.com/qeffects/helium">Helium</a> - A modern,
|
||
customizable, high performance retained UI framework.</li>
|
||
<li><a href="https://github.com/nekromoff/layouter">Layouter</a> - A
|
||
simple UI <strong>grid layout</strong> library for LÖVE 2D game
|
||
engine.</li>
|
||
<li><a href="https://github.com/darkmetalic/ListBox">ListBox</a> - A
|
||
dynamic ListBox for LÖVE that supports touch, mouse, and keyboard
|
||
inputs.</li>
|
||
<li><a href="https://github.com/linux-man/LoveFrames">LoveFrames
|
||
Fork</a> - 11.2 Fork of a GUI library.</li>
|
||
<li><a href="https://github.com/slages/love-imgui">Love Imgui</a> -
|
||
Imgui module for the LÖVE game engine.</li>
|
||
<li><a href="https://github.com/keharriso/love-nuklear">Löve-Nuklear</a>
|
||
- Lightweight immediate mode GUI for LÖVE games.</li>
|
||
<li><a href="https://codeberg.org/togfox/Lovely-Toasts">Lovely
|
||
Toasts</a> - Floating speech bubbles with text of your choice.</li>
|
||
<li><a href="https://github.com/immortalx74/lovr-ui2d">lovr-ui2d</a> -
|
||
An immediate mode GUI library for LÖVR and LÖVE.</li>
|
||
<li><a href="https://github.com/SiENcE/luis">Luis</a> - LUIS (Love UI
|
||
System) - A retained Mode UI Framework for LÖVE with Input processing
|
||
(mouse, keyboard, touch, gamepad), Layer-, Grid-, State-,
|
||
Theming-system, UI Editor, 16+ Widgets (for Desktop & Mobile).</li>
|
||
<li><a href="https://gitlab.com/TSnake41/lynx">Lynx</a> -
|
||
Very-lightweight list-based UI library.</li>
|
||
<li><a href="https://github.com/MikuAuahDark/NPad93#nlay">NLay</a> -
|
||
Flexible layouting library.</li>
|
||
<li><a href="https://github.com/excessive/patchy">Patchy</a> - 9patch
|
||
library.</li>
|
||
<li><a href="https://github.com/wqferr/slicy">Slicy</a> - A newer
|
||
9patch/9slice library fixing some issues with Patchy.</li>
|
||
<li><a href="https://github.com/zombrodo/plan">Plan</a> - A super simple
|
||
Rule-based layout library.</li>
|
||
<li><a href="https://gitlab.com/technomancy/polywell">Polywell</a> - A
|
||
highly-configurable text editor / coding tool written in Lua that runs
|
||
on the LÖVE game engine.</li>
|
||
<li><a href="https://github.com/josefnpat/safeword">SafeWord</a> - An
|
||
overscan detection library for LÖVE.</li>
|
||
<li><a href="https://github.com/flamendless/Slab">Slab</a> - Slab is an
|
||
immediate mode GUI toolkit for the LÖVE framework.</li>
|
||
<li><a href="https://github.com/vrld/SUIT">SUIT</a> - Small immediate
|
||
mode GUI library.</li>
|
||
<li><a href="https://github.com/KINGTUT10101/TuxRedux">TuxRedux</a> - An
|
||
immediate-mode UI system for LOVE2D inspired by SUIT.</li>
|
||
<li><a href="https://github.com/sasszem/yalg">YALG</a> - A very simple,
|
||
cross-platform, reactive UI for last minute UIs.</li>
|
||
<li><a href="https://gitea.it/1414codeforge/yui">YUI</a> - Declarative
|
||
UI library for LÖVE.</li>
|
||
<li><a href="https://github.com/Keyslam/Inky">Inky</a> - Any-purpose GUI
|
||
framework.</li>
|
||
<li><a href="https://github.com/Nabeel20/Badar">Badar 🌕</a> - Simple
|
||
<strong>custom UI syntax</strong> for easy components compositions.</li>
|
||
<li><a href="https://github.com/MoonGameLab/MeowUI">MeowUI</a> -
|
||
Extensible library written in MoonScript that enables you to create your
|
||
own GUI controls based on provided core modules for Löve2D.</li>
|
||
</ul>
|
||
<h2 id="utilities">Utilities</h2>
|
||
<p><em>Non-Game specific libraries and tools</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/itzKiwiSky/Andromeda">andromeda</a> -
|
||
Asset database and loader for love.</li>
|
||
<li><a
|
||
href="https://gist.github.com/rm-code/4118d4a97d8cde16952199d94b84ead0">ArrayRotation</a>
|
||
- Rotation of two dimensional arrays (square and non-square).</li>
|
||
<li><a href="https://github.com/Nawias/bar128-love">bar128-love</a> -
|
||
Barcode rendering library for LÖVE.</li>
|
||
<li><a href="https://github.com/bjornbytes/cargo">cargo</a> - Asset
|
||
manager.</li>
|
||
<li><a href="http://ejmr.github.io/chance.lua/">chance.lua</a> - Library
|
||
for generating random data.</li>
|
||
<li><a
|
||
href="https://github.com/santoslove/colorchanger">colorchanger</a> -
|
||
Change the colors in your LÖVE game.</li>
|
||
<li><a href="https://github.com/Alloyed/flirt">Flirt</a> - LÖVE version
|
||
manager; allows to switch between multiple versions of engine on same
|
||
machine.</li>
|
||
<li><a href="https://github.com/WetDesertRock/GifCat">GifCat</a> - A
|
||
simple module for saving gifs from LÖVE.</li>
|
||
<li><a href="https://github.com/S-Walrus/hex2color/">hex2color</a> - A
|
||
single function to use HEX color values.</li>
|
||
<li><a href="https://github.com/excessive/i18n">i18n</a> -
|
||
Internationalization library designed to help localize your game.</li>
|
||
<li><a href="https://github.com/FivosM/ini_parser">Ini Parser</a> -
|
||
General purpose ini configuration parser.</li>
|
||
<li><a href="https://github.com/KINGTUT10101/KeyedArray">KeyedArray</a>
|
||
- A special data structure where items can be found by their position or
|
||
key. Similar to an ordered dictionary.</li>
|
||
<li><a href="https://github.com/rxi/log.lua">log.lua</a> - Library for
|
||
configurable log output.</li>
|
||
<li><a href="https://github.com/kikito/love-loader">love-loader</a> -
|
||
Threaded resource loading.</li>
|
||
<li><a href="https://github.com/Nawias/love-qrcode">love-qrcode</a> - QR
|
||
Code rendering library for LÖVE.</li>
|
||
<li><a
|
||
href="https://github.com/Yonaba/love2d-assets-loader">love2d-assets-loader</a>
|
||
- Assets Loader.</li>
|
||
<li><a href="https://github.com/RamiLego4Game/love-pe">love-pe</a> - A
|
||
tool made in LÖVE for changing LÖVE icon itself.</li>
|
||
<li><a
|
||
href="https://github.com/vinnyhorgan/lovely-engine">lovely-engine</a> -
|
||
A tool that makes setting up and using LÖVE easier and with Moonscript
|
||
support.</li>
|
||
<li><a href="https://github.com/MikuAuahDark/lily">Lily</a> - Async
|
||
Asset Loader.</li>
|
||
<li><a
|
||
href="https://github.com/KINGTUT10101/LuaRequireExtended">LuaRequireExtended</a>
|
||
- A Lua module that lets you require files with input parameters and
|
||
multiple output values.</li>
|
||
<li><a href="https://github.com/uspgamedev/luasteam">luasteam</a> - Lua
|
||
bindings for the Steamworks API.</li>
|
||
<li><a href="https://github.com/ejmr/Luvent">Luvent</a> - Simple
|
||
event-driven programming.</li>
|
||
<li><a
|
||
href="https://github.com/Alloyed/nativefiledialog/tree/master/lua">nativefiledialog</a>
|
||
- Open a file picker on Windows/Mac/Linux.</li>
|
||
<li><a href="https://github.com/EngineerSmith/nativefs">nativefs</a> -
|
||
Read and write files outside of LÖVE’s allowed paths.</li>
|
||
<li><a
|
||
href="https://github.com/MusouCrow/ParticleEditor">ParticleEditor</a> -
|
||
An editor of particle for LÖVE.</li>
|
||
<li><a
|
||
href="https://github.com/santoslove/particle-system-playground">particle-system-playground</a>
|
||
- A basic LÖVE particle system editor.</li>
|
||
<li><a href="https://github.com/premek/require.lua">require.lua</a> -
|
||
Require all files in a folder.</li>
|
||
<li><a href="https://github.com/Oval-Tutu/smiti18n">smiti18n</a> - A
|
||
very complete internationalization library for Lua with LÖVE
|
||
support.</li>
|
||
<li><a href="https://github.com/videah/splashy">splashy</a> - Splash
|
||
Screen Library.</li>
|
||
<li><a
|
||
href="https://github.com/azoyan/ShakeDetectorLua">ShakeDetectorLua</a> -
|
||
Uses accelerometer data for shake device detection written in Lua.</li>
|
||
<li><a href="https://git.sr.ht/~akkartik/text2.love">text2.love</a> -
|
||
Full-featured text editor for prose (not code).</li>
|
||
<li><a href="https://github.com/bjornbytes/tick">tick</a> - Useful
|
||
timing tweaks for LÖVE’s run loop.</li>
|
||
<li><a href="https://github.com/YellowButShort/servelove/">servelove</a>
|
||
- A web server library that runs on love.</li>
|
||
</ul>
|
||
<h2 id="tutorials">Tutorials</h2>
|
||
<p><em>Blogs and tutorials</em></p>
|
||
<ul>
|
||
<li><a href="https://rvagamejams.com/learn2love/">learn2love</a> - Book
|
||
for learning programming with Lua and LÖVE (Version 11.0+).</li>
|
||
<li><a href="http://lua.space/gamedev/using-tiled-maps-in-love">Using
|
||
Tiled Maps in LÖVE</a> - An article about using maps created with Tiled
|
||
in your LÖVE game.</li>
|
||
<li><a
|
||
href="https://github.com/noooway/love2d_arkanoid_tutorial/wiki">Tutorial
|
||
on making an Arkanoid-type game</a> - A complete tutorial on how to make
|
||
a breakout clone by nooowaay.</li>
|
||
<li><a href="https://simplegametutorials.github.io/">Simple Game
|
||
Tutorials</a> - Tutorials for making simple games with LÖVE (Snake,
|
||
Sokoban, Tetris, etc.).</li>
|
||
<li><a href="https://sheepolution.com/learn/book/contents">How to
|
||
LÖVE</a> - A book by Sheepolution teaching LÖVE from the ground up.</li>
|
||
<li><a href="https://cs50.harvard.edu/games/">CS50 Introduction to Game
|
||
Development</a> - Harvard Colleges CS50 OpenCourseWare.</li>
|
||
<li><a
|
||
href="https://kalis.me/building-love2d-games-web-docker/">Building
|
||
love2d games for the web with love.js and Docker</a> - A tutorial on
|
||
packaging LÖVE games for the web.</li>
|
||
</ul>
|
||
<h2 id="ides">IDEs</h2>
|
||
<p><em>Integrated Development Environments and text editor
|
||
plugins</em></p>
|
||
<ul>
|
||
<li><a href="http://brackets.io/">Brackets</a> - A modern, open source
|
||
text editor by Adobe (obsolete).
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/ForbesLindesay/brackets-language-extensions">Lua
|
||
Syntax Highlighter</a> - Add Lua syntax highlighting in Brackets.</li>
|
||
<li><a
|
||
href="https://gitlab.com/sdonalcreative/brackets-love-hints/">LÖVE Hints
|
||
for Brackets.io</a> - Provides LÖVE code hints.</li>
|
||
<li><a href="https://github.com/instilledbee/run-love2d">Run LÖVE</a> -
|
||
Run LÖVE projects with a hotkey.</li>
|
||
</ul></li>
|
||
<li><a href="https://studio.zerobrane.com/">ZeroBrane Studio</a> -
|
||
ZeroBrane Studio is a lightweight Lua IDE with code completion, syntax
|
||
highlighting, live coding, code analyzer, and debugging support.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/flamendless/LOVE-API-Extractor-for-ZeroBraneStudio">API
|
||
Syntax Hightlight</a> - Script to add LOVE API syntax highlighting to
|
||
ZBS.</li>
|
||
</ul></li>
|
||
<li><a href="https://www.jetbrains.com/idea/">IntelliJ IDEA</a> -
|
||
Capable and Ergonomic Java IDE.
|
||
<ul>
|
||
<li><a href="https://github.com/EmmyLua/VSCode-EmmyLua">EmmyLua</a> -
|
||
Lua IDE/Debugger Plugin for VSCode.</li>
|
||
<li><a href="https://github.com/rm-code/love-IDEA-plugin">LÖVE IDEA</a>
|
||
- Snippets and code completion for IntelliJ-IDEA.</li>
|
||
</ul></li>
|
||
<li><a href="https://vim.sourceforge.io/">Vim</a> - Vim is a highly
|
||
configurable text editor built to make creating and changing any kind of
|
||
text very efficient.
|
||
<ul>
|
||
<li><a href="https://github.com/davisdude/vim-love-docs">Vim LOVE
|
||
Docs</a> - Syntax highlighting for Vim.</li>
|
||
</ul></li>
|
||
<li><a href="https://notepad-plus-plus.org">Notepad++</a> - Notepad++ is
|
||
a free source code editor and Notepad replacement that supports several
|
||
languages.
|
||
<ul>
|
||
<li><a href="https://github.com/dail8859/love-api-npp">LÖVE API for
|
||
Notepad++</a> - Code completion and documentation for Notepad++.</li>
|
||
</ul></li>
|
||
<li><a href="https://code.visualstudio.com/">Visual Studio Code</a> - VS
|
||
Code is a new type of tool that combines the simplicity of a code editor
|
||
with what developers need for their core edit-build-debug cycle.
|
||
<ul>
|
||
<li><a
|
||
href="https://marketplace.visualstudio.com/items?itemName=tomblind.local-lua-debugger-vscode">Local
|
||
Lua Debugger</a> - Simple Lua debugger with no dependencies. Löve
|
||
specific launch.json example provided.</li>
|
||
<li><a
|
||
href="https://marketplace.visualstudio.com/items?itemName=trixnz.vscode-lua">Lua
|
||
for Visual Studio Code</a> - Provides Intellisense and Linting for Lua
|
||
in VSCode.</li>
|
||
<li><a
|
||
href="https://marketplace.visualstudio.com/items?itemName=sumneko.lua">Lua
|
||
Language Server</a> - Various language features for Lua to make
|
||
development easier and faster; includes LÖVE code completion and
|
||
documentation.</li>
|
||
<li><a
|
||
href="https://marketplace.visualstudio.com/items?itemName=JanW.love-launcher">Visual
|
||
Studio Code LÖVE Launcher</a> - A Löve Launcher Extension for Visual
|
||
Studio Code.</li>
|
||
</ul></li>
|
||
<li><a href="https://www.sublimetext.com">Sublime Text</a> - Sublime
|
||
Text is a sophisticated text editor for code, markup and prose. You’ll
|
||
love the slick user interface, extraordinary features and amazing
|
||
performance.
|
||
<ul>
|
||
<li><a href="https://packagecontrol.io/">Package Manager</a> - The
|
||
Sublime Text package manager that makes it exceedingly simple to find,
|
||
install and keep packages up-to-date.</li>
|
||
<li><a
|
||
href="https://packagecontrol.io/packages/SublimeLove">SublimeLove</a> -
|
||
Supports syntax highlighting, auto-completion, and build system.</li>
|
||
<li><a
|
||
href="https://packagecontrol.io/packages/SublimeLinter-luacheck">SublimeLinter-luacheck</a>
|
||
- Provides linting and static analysis of your Lua code.</li>
|
||
</ul></li>
|
||
<li><a href="https://pulsar-edit.dev/">Pulsar</a> - Hackable text editor
|
||
based on the extinct Atom; Has great support and auto-completion works
|
||
nicely, but for now lacks error highlighting.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/rameshvarun/autocomplete-love">autocomplete-love</a>
|
||
- Auto-complete and snippets for LÖVE.</li>
|
||
<li><a href="https://github.com/rameshvarun/love-ide">love-ide</a> -
|
||
Auto-installs several utilities for writing Love2D games in Pulsar.</li>
|
||
<li><a href="https://github.com/FireZenk/language-lua">language-lua</a>
|
||
- Add syntax highlighting and snippets to lua files.</li>
|
||
<li><a
|
||
href="https://github.com/dapetcu21/atom-autocomplete-lua">atom-autocomplete-lua</a>
|
||
- Autocomplete for Lua.</li>
|
||
</ul></li>
|
||
<li><a href="https://zed.dev">Zed</a> - Zed is a next-generation code
|
||
editor designed for high-performance written in rust.
|
||
<ul>
|
||
<li><a href="https://github.com/alejandro-alzate/love2z">love2z</a> -
|
||
Alejandro’s Beta typing hints for Zed.</li>
|
||
<li><a href="https://github.com/LuaCATS/love2d">love2d</a> - LuaCATS
|
||
typing hints for the lua language server.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="distribution">Distribution</h2>
|
||
<p><em>Tools that automate game publishing in one way or another</em> *
|
||
<a href="https://github.com/Wolfyxon/lover">lover</a> - Bringing the
|
||
joys of rust’s package manager (<code>Cargo</code>) to love. * <a
|
||
href="https://github.com/love-actions">LÖVE Actions</a> - Build &
|
||
deploy cross-platform game packages on <strong><em>ALL</em></strong>
|
||
popular platforms. Supports Android, iOS, Linux, maxOS, Windows. * <a
|
||
href="https://github.com/simplifylabs/love-packager">love-packager</a> -
|
||
Simple CLI to package your LÖVE Game in seconds. * <a
|
||
href="https://github.com/camchenry/boon">boon</a> - Multi-platform, easy
|
||
to use tool supporting Windows, macOS, Linux. * <a
|
||
href="https://github.com/Oval-Tutu/bootstrap-love2d-project">LÖVE Game
|
||
Development & Automated Build System</a> - Preconfigured
|
||
VSCode/Codium. Build for Android, iOS, HTML5, Linux, macOS and Windows
|
||
and automatically publish to Itch.io. * <a
|
||
href="https://github.com/dmoa/love-export">love-export</a> - Fast and
|
||
simple command-line tool that builds binaries for you. Supports Windows,
|
||
macOS, and Linux. * <a
|
||
href="https://github.com/MisterDA/love-release">love-release</a> - A Lua
|
||
script that automates game distribution. Supports Windows, macOS,
|
||
Debian, Linux. * <a href="https://github.com/tpimh/lovesfx">lovesfx</a>
|
||
- Packs love games in a single file for windows. * <a
|
||
href="https://github.com/pfirsich/makelove">makelove</a> - Advanced
|
||
multi-platform tool to fuse your game written in Python 3. Supports
|
||
Windows and Linux with AppImage. * <a
|
||
href="https://github.com/ellraiser/love-build">love-build</a> -
|
||
Downloadable application (made in LÖVE!) that can build games for
|
||
Windows, macOS, and Linux regardless of your own OS. * <a
|
||
href="https://github.com/tducasse/love-deploy">love-deploy</a> - Build
|
||
and deploy games on itch.io (supports windows and web exports). * <a
|
||
href="https://github.com/MikuAuahDark/love-fuser">love-fuser</a> -
|
||
Packages LÖVE Games using GitHub Actions. Supports Windows, Linux, and
|
||
Android.</p>
|
||
<h2 id="related">Related</h2>
|
||
<ul>
|
||
<li><a href="https://github.com/LewisJEllis/awesome-lua">awesome-lua</a>
|
||
- A list like this one, but more general and encompassing all of Lua’s
|
||
uses.</li>
|
||
<li><a
|
||
href="https://github.com/karai17/awesome-love-shaders">awesome-love-shaders</a>
|
||
- A collection of shaders designed to work in LÖVE.</li>
|
||
<li><a href="https://github.com/pico-8/awesome-PICO-8">awesome-pico8</a>
|
||
- A curated list of PICO-8 resources, tutorials, tools and more.</li>
|
||
</ul>
|
||
<p>Other awesome lists can be found in the <a
|
||
href="https://github.com/bayandin/awesome-awesomeness">awesome-awesomeness</a>
|
||
list.</p>
|
||
<p><a
|
||
href="https://github.com/love2d-community/awesome-love2d">love2d.md
|
||
Github</a></p>
|