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

@wetdogweather/terrier

v1.0.6

Published

Terrier Weather Visualization Library

Readme

terrier-npm

Terrier Visualization Toolkit Distribution

This is the NPM package repo for the Terrier toolkit. Actual examples are on the TerrierWeb repo.

Terrier is a weather visualization package for web and mobile. This is the web version and the native version can be obtained from Wet Dog Weather.

You'll need an API key to access Wet Dog Weather data. Contact us for details.

Documentation

Terrier will work with a variety of map toolkits, including MapLibre, Mapbox, ESRI Web SDK, Leaflet, and OpenLayers. Consult our TerrierWeb repo for examples of each. We'll include the MapLibre example here.

Set up and build your MapLibre web app as normal. To add Terrier, you'll need to do the following.

Add the Terrier package.

npm install @wetdogweather/Terrier

In your map JS (or TS) file you'll need to import Terrier.

import Terrier from '@wetdogweather/terrier'

Once you've got a MapLibre map started, you can integrate Terrier with it and give it your stack name. 'prod' is our stack, but you can use it for testing.

// Tell Terrier to hook itself into MapLibre
Terrier.startMapLibre(stackName, apiKey, map, (ovl) => {
    // Now you can display a layer
})

The 'map' referenced is from MapLibre. stackName and apiKey are provided by Wet Dog Weather.

Once that callback is called, you're good to create layers. And you'll need that ovl object in any case. Within that callback you can start and modify layers like so.

    // Kick off a temperature layer
    let tempLayer = ovl.startLayer('temperature', {
        opacity: 0.5,
    })

    // Animate the results because why not
    ovl.timePlay({period: 10.0})

And that's basically it. Your layer names are things like 'temperature' and 'wind_uv' and whatever else you may have paid for. Take a look at the terrier docs for the full functionality.

Installation Details

Terrier consists of a Javascript interface in the main terrier.js file. It's documented in the repo and easy to follow. It also has a fairly incomprehensible Emscripten generated JS file and associated web assembly. You won't need to interact with those, but they do need to be included in your own distribution.

We've made that work with vite and other package managers, but if that fails the simplest thing to do is include the files we distribute under the public folder in the Terrier distribution.