Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A JavaScript animation library using CSS transforms and transitions
JavaScript Other
branch: master
Failed to load latest commit information.
site Update Hakyll file for new routing style in 3.1.
src Correct inversion of matrix multiplication order.
tasks Add site deploy script.
test Move test listing to automated test runner file.
vendor Port matrix tests to JS.Test framework.
.gitignore Add Gemfile listing required RubyGems.
.gitmodules
CHANGELOG Correct release date for version 1.0.0.
Gemfile Add Gemfile listing required RubyGems.
Jakefile Don't copy text files to build directory.
LICENSE Remove the buggy FirminCSSMatrix from this release.
README.md Update README with new build and test instructions.
jake.yml Add an 'all' build with both Firmin and FirminCSSMatrix, and use it i…

README.md

Firmin

Firmin is a JavaScript animation library based on CSS transforms and transitions.

var box = document.getElementById("box");

Firmin.animate(box, {
    scale:     {x: 2, y: 3},
    translate: {x: -100, y: 35}
}, 0.5);

Development

To build Firmin from source you will need Ruby, RubyGems and Bundler. The test suite also depends on JS.Class, which is provided as a Git submodule. To get everything working, run the following shell commands in order.

# Download the source code
git clone git://github.com/beastaugh/firmin.git
cd firmin
git submodule update --init --recursive

# Install dependencies
gem install bundler
bundle install

# Build the test framework and Firmin
cd vendor/jsclass
jake
cd -
jake

# Run tests
open test/runner.html

The last command will (on OS X, anyway) open the test runner for Firmin's automated test suite. The test runner page also includes links to the manual tests which must be run by hand in a browser.

The FirminCSSMatrix test suite currently fails on non-WebKit browsers as the WebKitCSSMatrix class is not available as a reference implementation.

Something went wrong with that request. Please try again.