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

streamdrop-cli

v1.0.21

Published

Securely send and receive files directly from your terminal using StreamDrop.

Downloads

1,094

Readme

StreamDrop CLI

The StreamDrop CLI allows you to securely send and receive files (and entire folders) directly from your terminal. It uses the exact same end-to-end encryption (AES-GCM) and HTTP streaming backend as the web app, but optimized for the command line.

Features

  • End-to-End Encrypted: Files are encrypted and decrypted locally; the server never sees your data.
  • Streaming: Handles massive files without using extra RAM.
  • Folder Support: Send an entire directory and it will be archived (tar) on the fly. The receiver automatically extracts it on the fly.
  • Live Progress: Real-time progress bars with speed (MB/s) and ETA.
  • Terminal QR Codes: Easily share the receive link to a mobile device.

Installation

macOS / Linux (Homebrew)

brew tap AntonyLeons/tap
brew install streamdrop-cli

Windows (Scoop & Chocolatey)

# Scoop
scoop bucket add antonyleons https://github.com/AntonyLeons/homebrew-tap.git
scoop install streamdrop-cli

### From Source
Ensure you have [Bun](https://bun.sh/) installed, then build the binary:

```bash
git clone https://github.com/AntonyLeons/streamdrop.git
cd streamdrop
bun run cli:build

You can then link it or move it to your PATH:

# Example: symlink to your local bin
ln -s $(pwd)/dist/streamdrop-cli /usr/local/bin/streamdrop

Usage

Sending a File

streamdrop send my-video.mp4

Output: Generates a secure share link. It will wait until a receiver connects before starting the encrypted stream.

Tip: Add the --qr flag if you want to generate a terminal QR code of the share link.

Receiving a File

streamdrop receive "https://streamdrop.app/xyz123#key..."

Output: Connects to the sender, downloads, decrypts, and saves the file to your current directory.

Sending a Folder

You can pass a directory directly to send:

streamdrop send ./my-project

The CLI will automatically use tar to archive the folder on the fly. On the receiving end, the StreamDrop CLI will detect the archive and automatically extract it back into a folder without saving the raw .tar file to disk.

If the receiver wants to just save the .tar file without extracting it, they can use the --no-extract flag:

streamdrop receive "https://streamdrop.app/xyz123#key..." --no-extract

Custom Save Path

To save a received file under a different name or location:

streamdrop receive "https://streamdrop.app/xyz123#key..." --out ~/Downloads/custom-name.mp4

(Note: If a file already exists and you don't provide --out, StreamDrop will automatically append a counter like file (1).mp4 to prevent overwriting.)

Configuration (Custom Server)

By default, the CLI uses https://streamdrop.app. If you are self-hosting StreamDrop, you can point the CLI to your own server in three ways:

1. Command Line Flag (Per Run)

streamdrop send my-file.txt --server http://192.168.1.10:3000

2. Environment Variable

export STREAMDROP_SERVER="http://192.168.1.10:3000"
streamdrop send my-file.txt

3. Global Config File (Recommended) Create a .streamdroprc file in your home directory (~/.streamdroprc) and add your server URL:

SERVER=http://192.168.1.10:3000

The CLI will automatically read this file every time it runs.