Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. LÖVE
  3. Peachy

Peachy

MITLua

A parser and renderer for Aseprite animations in the LÖVE 2D game framework.

GitHubGitHub
113 stars16 forks0 contributors

What is Peachy?

Peachy is a Lua library that parses and renders Aseprite animations within the LÖVE 2D game framework. It loads Aseprite's exported JSON data and corresponding spritesheets to manage and display animations directly in LÖVE projects. The tool solves the problem of manually handling animation frames and timing by providing a structured API for animation control.

Target Audience

Game developers using the LÖVE framework who create their sprite animations in Aseprite and need a streamlined way to import and control those animations in their games.

Value Proposition

Developers choose Peachy because it offers a direct, lightweight integration between Aseprite and LÖVE, eliminating the need for custom animation systems. Its support for Aseprite features like frame tags and slices provides a more efficient workflow compared to manual sprite sheet handling.

Overview

A parser/renderer for Aseprite animations in LÖVE. :peach:

Use Cases

Best For

  • Importing Aseprite animations into LÖVE games
  • Managing sprite animations with play, pause, and frame control
  • Using Aseprite slices for hitboxes or UI elements in LÖVE
  • Handling multiple animation states via Aseprite frame tags
  • Triggering game events when an animation loops
  • Streamlining the art-to-code pipeline for 2D game developers

Not Ideal For

  • Games not using Aseprite for sprite animation, as Peachy is specifically designed to parse Aseprite JSON exports.
  • Projects requiring animated slices or dynamic hitboxes, since Peachy's slices are static and do not support animation.
  • Developers using game engines or frameworks other than LÖVE, due to its tight integration with the LÖVE API.

Pros & Cons

Pros

Direct Aseprite Integration

Seamlessly loads and parses Aseprite JSON exports with frame tags and slices, simplifying the import workflow as demonstrated in the example code.

Comprehensive Animation Control

Provides functions like play, pause, stop, and tag switching, enabling easy management of animation states without manual timing calculations.

Slice Utility Support

Supports Aseprite slices as named regions with custom user data, useful for hitboxes or UI elements, as shown in the slices documentation.

Event-Driven Callbacks

Includes an onLoop callback system to trigger functions when animations loop, enhancing game interaction without extra boilerplate code.

Cons

Image Path Issues

Aseprite exports non-relative image paths by default, which LÖVE cannot load, requiring manual JSON edits or workarounds as admitted in the limitations.

Static Slices

Slices do not animate, limiting their use for dynamic elements like animated hitboxes, a restriction acknowledged in the README's limitations section.

Frame Tag Dependency

Requires frame tags to be set up in Aseprite even for single animations, adding an extra step that can be error-prone for simple projects.

Frequently Asked Questions

Quick Stats

Stars113
Forks16
Contributors0
Open Issues0
Last commit2 months ago
CreatedSince 2018

Tags

#graphics#animation#aseprite#game-development#sprite#lua#love2d-framework#love#renderer#love2d#parser#2d-graphics

Built With

L
LÖVE
L
Lua

Included in

LÖVE4.3k
Auto-fetched 19 hours ago

Related Projects

anim8anim8

An animation library for LÖVE

Stars979
Forks107
Last commit4 years ago
SYSL-TextSYSL-Text

Text rendering with tag support.

Stars117
Forks8
Last commit2 years ago
Aseprite loaderAseprite loader

Aseprite file loader for love2d

Stars65
Forks1
Last commit3 years ago
WaltWalt

An animation library for LÖVE.

Stars65
Forks2
Last commit4 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub