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

rudderstash

v0.1.5

Published

Rudderstack transformation version control, deployment and testing.

Downloads

462

Readme

rudderstash

rudderstash is a management, testing and deployment utility for Rudderstack transformations and libraries.

The goal is to provide a robust Rudderstack transformation (aka transformer) and library development workflows that the Rudderstack web UI lacks: TypeScript support, version control and collaboration, unit testing, deployment.

Getting Started

# From NPM
npm i -g rudderstash

# From sources
# git clone [email protected]:soulseekah/rudderstash.git
# make install

mkdir project && cd project

A read-write Rudderstack API token is required for synchronization. This can either be Personal Access Token or a Service Access Token. Set the RUDDERSTACK_API_TOKEN in the .env file in the project root or supply it via environment variables. See .env.example, and remember to never commit your .env file.

The RUDDERSTACK_API_USER (matches your account email) and RUDDERSTACK_API_ENDPOINT should also be supplied (either https://api.rudderstack.com for US-based data planes or https://api.eu.rudderstack.com for EU ones).

rudderstash status

Check what's upstream and in the local directory before pulling in.

Now pull in your existing transformers:

rudderstash pull

Modify.

rudderstash push

Testing Transformations

Testing is simple. Add a MyTransformation.tests.json file corresponding to the transformation you'd like to test containing any number of tests.

[
  {
    "name": "My first test",
    "input": {
     "ip": "127.0.0.1",
     "browser": "Chrome",
    },
    "expected": {
      "ip": "127.0.X.X",
      "browser": "Chrome",
    },
    "metadata": {
      "destinationId": "....",
    },
  }
]

Now run all tests against matching transformers like so rudderstash test.

Tip: You can use tests to debug your transformers with anything from good old console.log to attaching full fledged debuggers via the debugger statement!

Roadmap

  • [ ] TypeScript support
  • [ ] Support revisions
  • [ ] Git integration
  • [ ] Add colors
  • [ ] Polish a lot
  • [ ] Stage or allow partial pushes
  • [ ] Support non-deterministic tests

Support & License

This project is currently UNLICENSED and under heavy development. Use at your own risk.

The code is provided as-is without warranty of any kind. Data loss or corruption may occur. Always backup your transformations before using this tool.

For questions or support, contact me on Discord: soulseekah