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 🙏

© 2025 – Pkg Stats / Ryan Hefner

pet-panda

v2.1.1

Published

A simple virtual pet panda to embed on any webpage

Downloads

21

Readme


Usage

To get started with the Panda, include the pet-panda script in your own JavaScript file and spawn a new Panda in your chosen container:

const Panda = require('pet-panda');

document.addEventListener('DOMContentLoaded', () => {
    new Panda(document.body);
});

This will automatically include the needed styling to render the Panda and its Bamboo. The world the Panda lives in will expand to fill the container that you give it, with the Panda exploring along the bottom edge and the Bamboo slowly growing the full height of the world.

The scale of the Panda's world can also be customised, such as setting the Panda's world to be zoomed out at 2x the world size in the same given container:

const Panda = require('pet-panda');

document.addEventListener('DOMContentLoaded', () => {
    new Panda(document.body, { worldScale: 2 });
});

Supported options for the object passed as the second argument are as follows:

  • worldScale -- Defaults to 1, a float value for the scale of the Panda's world in the container.
  • shootCount -- Defaults to 5, an integer number of Bamboo shoots to spawn in the Panda's world.
  • shootHeight -- Defaults to 80, a float value for the base Bamboo segment height (will be random within 25%).
  • debugMessages -- Defaults to false, a toggle to enable state debug messages for the Panda.

Contributing

Contributions are always welcome to this project!
Take a look at any existing issues on this repository for starting places to help contribute towards, or simply create your own new contribution to the project.

Please make sure to follow the existing standards within the project such as code styles, naming conventions and commenting/documentation.

When you are ready, simply create a pull request for your contribution and I will review it whenever I can!

Donating

You can also help me and the project out by sponsoring me through GitHub Sponsors (preferred), contributing through a donation on PayPal or by supporting me monthly on my Patreon page.

Discussion, Support and Issues

Need support with this project, have found an issue or want to chat with others about contributing to the project?

Please check the project's issues page first for support & bugs!

Not found what you need here?

  • If you have an issue, please create a GitHub issue here to report the situation, include as much detail as you can!
  • or, You can join our Slack workspace to discuss any issue, to get support for the project or to chat with contributors and myself: