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

prezzy-cli

v0.2.0

Published

Make any CLI output beautiful. Zero config. Just pipe.

Readme

prezzy

Make any CLI output beautiful. Zero config. Just pipe.

prezzy demo

command | prezzy

Prezzy auto-detects the format of piped CLI output and applies syntax highlighting, structural formatting, and color. JSON gets indented. Logs get level-colored. CSV becomes a table. Diffs get green/red. All automatically.

Install

Homebrew (macOS/Linux)

brew install viziums/tap/prezzy

Cargo (Rust)

cargo install prezzy

npm (via binary wrapper)

npm install -g prezzy-cli

Pre-built binaries

Download from GitHub Releases for Linux, macOS (Intel + Apple Silicon), and Windows.

Shell completions

prezzy --completions=bash >> ~/.bashrc
prezzy --completions=zsh >> ~/.zshrc
prezzy --completions=fish > ~/.config/fish/completions/prezzy.fish

Usage

# JSON - auto-indented and highlighted
curl -s https://api.github.com/users/octocat | prezzy

# Structured logs (NDJSON) - columnar view with colored levels
docker compose logs --format json | prezzy

# Plain text logs - timestamp dimmed, levels colored
tail -f /var/log/app.log | prezzy

# Diffs - green additions, red deletions
git diff | prezzy

# CSV / TSV - rendered as a bordered table
cat data.csv | prezzy

# Environment variables - aligned columns
env | prezzy

# YAML config - syntax highlighted
cat config.yaml | prezzy

# XML / HTML - tag and attribute coloring
cat pom.xml | prezzy

# Stack traces - error bold red, library frames dimmed
python script.py 2>&1 | prezzy

# Markdown - headings, code blocks, lists
cat README.md | prezzy

# Filter logs by level
docker compose logs | prezzy --level=warn

# Use a different theme
cat data.json | prezzy --theme=dracula

# Pipe through a pager
kubectl logs pod-name | prezzy --pager

Supported Formats

| Format | Detection | What prezzy does | |--------|-----------|------------------| | JSON | { or [ start | Indent, syntax highlight keys/values/types | | NDJSON | JSON objects per line | Columnar: timestamp, level, message, extra fields | | Log lines | Timestamp + level patterns | Dim timestamps, color levels by severity | | Diff / Patch | @@, ---, +++ markers | Green adds, red removes, bold headers | | Stack traces | Python, JS, Java, Rust, Go, C#, Ruby | Bold error, dim library frames, highlight your code | | CSV / TSV | Consistent delimiters | Bordered table with header row | | Key=Value | KEY=value pattern | Aligned columns | | YAML | key: value patterns | Syntax highlight keys, values, types | | XML / HTML | <tag> patterns | Highlight tags, attributes, values | | Markdown | # headings, fences, lists | Bold headings, colored markers, code blocks | | Plain text | Fallback | Passthrough (no corruption) |

Themes

prezzy --list-themes

Built-in: default, monokai, dracula, solarized-dark, solarized-light, nord, gruvbox

Set a default theme in ~/.config/prezzy/config.toml:

theme = "dracula"

Configuration

Create ~/.config/prezzy/config.toml:

# Default color theme
theme = "default"

# Use ASCII box-drawing (for screen readers or limited terminals)
ascii = false

# Default log level filter
# level = "info"

CLI flags always override config file values.

Flags

prezzy [OPTIONS] [FILE]

Options:
  -f, --format <FORMAT>    Force a specific format
  -t, --theme <THEME>      Color theme [default: default]
      --color <MODE>       auto, always, never [default: auto]
  -w, --width <COLS>       Override terminal width
  -l, --level <LEVEL>      Filter logs by minimum level
      --ascii              Use ASCII box-drawing characters
      --pager              Pipe through less
      --list-themes        List available themes
  -h, --help               Print help
  -V, --version            Print version

Standards

  • Respects NO_COLOR and FORCE_COLOR
  • Safe in pipelines -- no escape codes when stdout is not a TTY
  • Handles broken pipes gracefully (prezzy | head)
  • Never modifies input when it can't detect the format

License

MIT