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

rq-rm

v1.0.0

Published

Lightning-fast rm alternative powered by Bun - 2-4x faster file deletion

Readme


rq is a drop-in replacement for rm that's 2-4x faster. Built with Bun and optimized for parallel I/O operations.

# Instead of: rm -rf node_modules
rq -rf node_modules  # 2-4x faster!

Why rq?

| Scenario | rm | rq | Speedup | |----------|------|------|---------| | Delete node_modules (10k files) | 17.9s | 7.5s | 2.4x | | Deep nested directories | 50ms | 13ms | 3.9x | | Bulk file deletion | 860ms | 382ms | 2.3x |

Installation

# With bun (recommended)
bun install -g rq-rm

# With npm
npm install -g rq-rm

Usage

rq is fully compatible with rm. Just replace rm with rq:

# Delete files
rq file.txt
rq file1.txt file2.txt file3.txt

# Delete directories (recursive)
rq -r directory/
rq -rf node_modules/   # Force + recursive

# Verbose mode
rq -rv build/          # See what's being deleted

# Interactive mode
rq -i important.txt    # Prompt before deletion

Options

| Flag | Long Form | Description | |------|-----------|-------------| | -f | --force | Ignore nonexistent files, never prompt | | -r | --recursive | Remove directories and their contents | | -R | | Same as -r | | -d | --dir | Remove empty directories | | -v | --verbose | Explain what is being done | | -i | | Prompt before every removal | | -I | | Prompt once before removing >3 files | | -x | --one-file-system | Stay on one file system | | | --preserve-root | Do not remove / (default) | | | --no-preserve-root | Allow removing / | | | --help | Display help | | | --version | Display version |

Benchmarks

Tested on macOS with SSD storage:

============================================================
                      BENCHMARK RESULTS
============================================================

| Test                        | rm (ms)  | rq (ms)  | Speedup |
|-----------------------------|----------|----------|---------|
| small (30 files)            |     4.09 |     1.36 |  3.01x  |
| medium (620 files)          |    53.91 |    25.54 |  2.11x  |
| large (10k files, nested)   | 17961.89 |  7490.67 |  2.40x  |
| flat-10k                    |   860.10 |   382.04 |  2.25x  |
| flat-50k                    |  5527.96 |  3573.26 |  1.55x  |
| deep (200 files, 20 levels) |    49.89 |    12.80 |  3.90x  |
| wide (15.5k files)          |  1280.38 |   544.74 |  2.35x  |

Overall Average Speedup: 2.51x

Run benchmarks yourself:

bun run benchmark

How It Works

  1. Parallel I/O: Files are deleted concurrently using Promise.all(), saturating disk I/O bandwidth
  2. Sync Traversal: Directory tree is walked synchronously to minimize Promise overhead
  3. Bun Native: Leverages Bun's optimized filesystem APIs for maximum performance
  4. Zero Dependencies: No external dependencies, just pure Bun

Development

# Clone the repo
git clone https://github.com/tryosschat/rq.git
cd rq

# Install dependencies
bun install

# Run tests
bun test

# Run benchmarks
bun run benchmark

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT License - see LICENSE for details.