Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including packery with all npm packages installed. Try it out:

var packery = require("packery")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

packery v2.1.2

Gapless, draggable grid layouts


Bin-packing layout library

See for complete docs and demos




Link directly to Packery files on unpkg.

<script src=""></script>
<!-- or -->
<script src=""></script>

Package managers

Bower: bower install packery --save

npm: npm install packery --save


Commercial license

If you want to use Packery to develop commercial sites, themes, projects, and applications, the Commercial license is the appropriate license. With this option, your source code is kept proprietary. Purchase a Packery Commercial License at

Open source license

If you are creating an open source application under a license compatible with the GNU GPL license v3, you may use Packery under the terms of the GPLv3.

Read more about Packery's license.


With jQuery

  // options...
  itemSelector: '.grid-item'

With vanilla JavaScript

// vanilla JS
var grid = document.querySelector('.grid');
// initialize with element
var pckry = new Packery( grid, {
  // options...
  itemSelector: '.grid-item'

// initialize with selector string
var pckry = new Packery('.grid', {
  // options...


Add a data-packery attribute to your element. Options can be set in JSON in the value.

<div class="grid" data-packery='{ "itemSelector": ".grid-item" }'>
  <div class="grid-item"></div>
  <div class="grid-item"></div>

By Metafizzy


RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free