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

openpeep

v0.1.3

Published

Every file type deserves its own app

Readme

OpenPeep

Every file type deserves its own app.

OpenPeep is a desktop application for viewing and editing any file using custom web apps called Peeps. Open a CSV and get a real spreadsheet. Open a project folder and get a kanban board. Each Peep is a full web app (HTML/CSS/JS, any framework) that activates when you open a matching file or folder.

Prerequisites

node --version   # Need v20+
python3 --version  # Need 3.11+

Don't have them?

  • Node.js: https://nodejs.org (grab the LTS)
  • Python: https://python.org/downloads or brew install python3 on macOS

Quick Start

npx openpeep

That's it. The wizard will:

  1. Check Python 3.11+ and Node.js 20+ are installed
  2. Create a Python environment
  3. Ask where you keep your projects
  4. Set up a demo workspace with sample files
  5. Offer to install the Claude Code plugin
  6. Start OpenPeep

Commands

npx openpeep              # Start (wizard on first run)
npx openpeep stop          # Stop the server
npx openpeep restart       # Restart
npx openpeep status        # Check if running
npx openpeep doctor        # Diagnose issues
npx openpeep doctor --fix  # Auto-repair issues

For Contributors

Clone and run in dev mode:

git clone https://github.com/TaisoAI/openpeep.git
cd openpeep
npm run setup
npm run dev

Architecture

OpenPeep is split into two parts:

  • Backend -- FastAPI (Python) server that handles file system access, source/workspace management, and peep discovery. Exposes a REST API under /api.
  • Frontend -- React + Vite + Tailwind CSS app that provides the file browser, board view, settings, and peep rendering. Peeps are loaded in iframes and communicate with the host via the PeepSDK.

Three-Tier Peep System

Peeps are discovered from three locations, in priority order:

  1. Workspace peeps -- <workspace>/.openpeep/peeps/ (project-specific, highest priority)
  2. User peeps -- ~/.openpeep/peeps/ (installed from PeepHub or user-created)
  3. Built-in peeps -- shipped with OpenPeep in the peeps/ directory (text, markdown, HTML, JSON, image, audio, video, 3D model, meeting notes)

A peep declares which file extensions or folder patterns it handles in its peep.json manifest. When you open a file, OpenPeep finds the best matching peep and loads it.

PeepSDK

Every peep includes the PeepSDK (peeps/_sdk/peep-sdk.js) via a script tag. The SDK provides:

  • PeepSDK.on('init', callback) -- receive file content, path, and settings when the peep loads
  • PeepSDK.save(content) -- write changes back to the file
  • PeepSDK.rawFileUrl(path) -- get a URL to load binary files (images, audio, video) through the backend
  • Theme injection -- the host app pushes CSS variables so peeps match the current theme automatically

Building Peeps

A peep is a folder containing at minimum an index.html and a peep.json manifest. You can use vanilla JS, React, Vue, Three.js, D3, Monaco Editor, or any other web technology.

See the built-in peeps in peeps/ for working examples, and the SDK source at peeps/_sdk/peep-sdk.js for the full API.

Claude Code Integration

OpenPeep works with Claude Code through an MCP server and a plugin with skills.

Quick Setup

Inside Claude Code, run:

/plugin marketplace add TaisoAI/openpeep
/plugin install openpeep@taiso-openpeep

This installs the MCP server, skills, and agents automatically. You only need to do this once.

What it provides

  • MCP tools: list_peeps, get_file_template, preview_url, create_peep, publish_peep
  • Skills: create-content (creates properly structured project folders), peep-workflow (reference guide)
  • Agent: openpeep-creator (delegates content creation tasks)

License

MIT License

Copyright (c) 2026 Taiso Labs (taiso.ai)