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

repobeats

v0.1.5

Published

Transform your git commits into music - CLI tool

Readme

RepoBeats

Transform your git commits into music

RepoBeats analyzes your repository's commit history and generates unique musical compositions based on commit patterns, authors, timestamps, and code changes.

Quick Start

# Run in any git repository
npx repobeats ui

Installation

# Install globally
npm install -g repobeats

# Or use directly with npx
npx repobeats ui

Commands

repobeats ui

Start the interactive UI in your browser.

repobeats ui [path] [options]

Options:
  -p, --port <number>     Custom port (default: auto-detect)
  --host <address>        Host to bind (default: 127.0.0.1)
  --no-open               Don't open browser automatically
  --since <date>          Start from this date/commit
  --until <date>          End at this date/commit
  --max-commits <n>       Limit number of commits (default: 1000)
  --no-cache              Disable commit caching

repobeats export

Export your repository as MIDI, WAV, JSON, or a full bundle.

repobeats export [path] [options]

Options:
  -f, --format <type>     Output format: midi, wav, json, bundle (default: bundle)
  -o, --out <path>        Output file path
  --preset <name>         Use a preset: default, chill, intense, minimal, ambient
  --instruments <list>    Instruments for WAV: guitar,piano,drums,strings (comma-separated)
  --since <date>          Start from this date/commit
  --until <date>          End at this date/commit
  --max-commits <n>       Limit commits
  --anonymize             Remove author/message data

repobeats inspect

View repository statistics and mapping preview.

repobeats inspect [path] [options]

Options:
  --since <date>          Start from this date/commit
  --until <date>          End at this date/commit
  --max-commits <n>       Limit commits
  --json                  Output as JSON

Presets

| Preset | BPM | Scale | Character | |--------|-----|-------|-----------| | default | 120 | Pentatonic | Balanced, melodic | | chill | 70 | Major | Slow, soft, relaxing | | intense | 160 | Minor | Fast, aggressive | | minimal | 90 | Pentatonic | Clean, repetitive | | ambient | 60 | Dorian | Atmospheric, spacey |

How It Works

RepoBeats maps commit metadata to musical parameters:

| Parameter | Sources | |-----------|---------| | Pitch | Commit SHA, author name, hour of day, day of week | | Velocity | Lines added/deleted, files changed, message length | | Duration | Diff size, file count, message length | | Tempo | Fixed BPM or commit frequency |

UI Features

  • Dashboard: Repository overview, commit heatmap, author stats
  • Mapping: Customize how commits become notes
  • Playback: Listen to your repo with real-time visualization
  • Export: Download WAV, MIDI, JSON, or bundled archives

Examples

# Open current directory
repobeats ui

# Open specific repository
repobeats ui ~/projects/my-app

# Export last 100 commits as MIDI with chill preset
repobeats export --max-commits 100 --preset chill --format midi

# Export as WAV with piano and strings only
repobeats export --format wav --instruments piano,strings --preset ambient

# Export as WAV with all instruments
repobeats export --format wav --preset default

# Inspect with JSON output
repobeats inspect --json > stats.json

# Export anonymized bundle
repobeats export --anonymize --out my-project.zip

Requirements

  • Node.js 18+
  • Git repository with at least one commit

License

Proprietary - See LICENSE for details.

You may use this software for personal and educational purposes. Redistribution is not permitted.