animate-preview: Preview tool for sprite animation

[ bsd3, game, library, program ] [ Propose Tags ]

Preview tool for sprite animation

[Skip to Readme]


  • Animate
    • Animate.Preview
      • Animate.Preview.Animation
      • Animate.Preview.Chars
      • Animate.Preview.Color
      • Animate.Preview.Config
      • Animate.Preview.Input
      • Animate.Preview.Loader
      • Animate.Preview.Logger
      • Animate.Preview.ManagerInput
      • Animate.Preview.Mode
      • Animate.Preview.Renderer
      • Animate.Preview.Resource
      • Animate.Preview.Runner
      • Animate.Preview.SDLInput
      • Animate.Preview.SDLRenderer
      • Animate.Preview.Scalar
      • Animate.Preview.Scene
      • Animate.Preview.State
      • Animate.Preview.Watcher


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.0.0, 0.1.0, 0.1.1, 0.1.2,,,
Dependencies aeson, animate, animate-preview, base (>=4.7 && <5), bytestring, containers, filepath, fsnotify, key-state, lens, linear, mtl, optparse-applicative, optparse-generic, random, safe, safe-exceptions, sdl2, sdl2-fps, sdl2-gfx, sdl2-image, sdl2-ttf, StateVar, text, text-conversions, vector [details]
License BSD-3-Clause
Copyright 2018 Joe Vargas
Maintainer Joe Vargas
Category Game
Home page
Bug tracker
Source repo head: git clone
Uploaded by jxv at 2018-05-27T16:59:05Z
Executables animate-preview
Downloads 3963 total (15 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2018-05-27 [all 3 reports]

Readme for animate-preview-

[back to package description]

Animate Preview

Animate Preview is a program for viewing sprite animation. It's intended to be used in sprite development with an image and text editor. The viewer automatically reloads the files for speedy turnaround. animate is the main underlying Haskell library. It's recommend to use sdl2 and animate-sdl2 for graphics. An example can be found here.

Watch the Video


Try it!

Download executables: OSX | Ubuntu linux

Download resources: dino.png, dino.yaml

animate-preview --target /path/to/dino.yaml --image /path/to/dino.png --watch

More information about the yaml file


Usage: animate-preview --target STRING [--image STRING] [--high-dpi] [--fps INT]

Available options:
  -h,--help                Show this help text
  --target STRING          File path with sprite information (YAML or JSON)
  --image STRING           Force sprite sheet's file path
  --high-dpi               Use high DPI (if available)
  --fps INT                Force frames per second (default: 60)
  --watch                  Watch target and image files. Automatically reload
                           files when changed


Animate Preview is mostly controlled through the keyboard.


  • m: Toggle modes - Playback and Stepper
  • r: Reload sprite information and sprite sheet
  • escape: Quit program


  • j/down arrow: Move sprite down
  • k/up arrow: Move sprite up
  • h/left arrow: Move sprite left
  • l/right arrow: Move sprite right
  • mouse click (and drag): Sprite follows mouse cursor
  • c: Center sprite


  • n: Next keyframe animation
  • p: Previous keyframe animation

Speed and Frame position

  • f: (Playback Mode) Increase sprite animation speed. (Stepper Mode) Go to next frame.
  • d: (Playback Mode) Decrease sprite animation speed. (Stepper Mode) Go to previous frame.
  • a: Reset animation speed to 1x


  • s/mouse wheel click: Reset sprite scale to 1x
  • +/scroll in: Scale up sprite
  • -/scroll out: Scale down sprite


  • t: Iterate colors of the offset's crosshair (Red, Green, Blue, Cyan, Magenta, Yellow, None)
  • b: Iterate colors of the background (Gray checkered, Black checkered, White checkered)
  • o: Iterate colors of the sprite's outline (Red, Green, Blue, Cyan, Magenta, Yellow, None)
  • i: Toggle showing or hiding animation information


OSX build

brew install sdl2
brew install sdl2_ttf
brew install sdl2_image
brew install sdl2_gfx
stack build

Ubuntu build

sudo apt install libsdl2-dev libsdl2-ttf-dev libsdl2-image-dev libsdl2-gfx-dev
stack build

Windows build

stack exec -- pacman -S mingw64/mingw-w64-x86_64-pkg-config mingw64/mingw-w64-x86_64-SDL2 mingw64/mingw-w64-x86_64-SDL2_ttf mingw64/mingw-w64-x86_64-SDL2_image mingw64/mingw-w64-x86_64-SDL2_gfx
stack build