npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

waterline-fixtures

v0.2.3

Published

Easy-to-use fixtures for Waterline ORM.

Readme

Fixtures for Waterline ORM

Provides an easy way to initialize data fixtures using Waterline ORM. Most of the code here comes from sails-fixtures. Fixtures are generally read from JSON files into Waterline collections.

How-to

  1. Define your fixtures
  2. Initialize Waterline
  3. Load fixtures

Simply call the module's init(configuration, callback) method once Waterline is ready. callback is a standard async callback function to which an error may be passed as a first argument. configuration is an object using the following key-value pairs:

  • collections is an object containing extended Waterline collections (see example). collections is required.
  • fixtures is filled with JSON fixtures, adhering to the data format specified in the section below. This is optional.
  • dir specifies a directory in which to look for JSON fixtures. It is used with the pattern option. dir and pattern are optional.
  • pattern specifies a glob pattern to match files within the directory specified by dir. The matched files should contain JSON fixtures, adhering to the data format specified in the section below. dir and pattern are optional.

Example

var Waterline = require('waterline');
var waterlineFixtures = require('waterline-fixtures');

var ORM = new Waterline();

// Load Waterline collections here and setup configuration for Waterline
var waterlineConfig = {};

// Initialize Waterline
ORM.initialize(waterlineConfig, function(err, models) {
  if(err) throw err;

  var next = function doThisAfterFixturesAreLoaded(err) {};

  // Load fixtures
  waterlineFixtures.init({
    collections: models.collections,
    dir: '/path/to/your/fixtures/directory',
    pattern: '*.json' // Default is '*.json'
  }, next);

});

Data Format

Fixtures are loaded in parallel. Their contents are loaded in series in specified order.

[
  {
    "model": "cats",
    "items":[
      {
        "id": 1,
        "name": "Stimpy"
      },
      {
        "id":50,
        "name": "Alonzo"
      }
    ]
  },
  {
    "model": "dogs",
    "items":[
      {
        "id": 7,
        "name": "Ren"
      }
    ]
  }
]