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

rebebuca

v1.0.10

Published

Run Configuration Management Tool — launch via npx rebebuca

Readme

Rebebuca

npm Node.js Vue TypeScript License

Official Website | 中文文档 | English


🚀 Quick Start

npx rebebuca

That's it! Rebebuca starts a local web server and opens your browser automatically.

Options

npx rebebuca --port 8080          # Custom port (default: 3000)
npx rebebuca 8080                 # Shorthand for --port 8080
npx rebebuca --host 0.0.0.0       # Expose on all network interfaces
npx rebebuca --no-open            # Don't open browser automatically
npx rebebuca --no-mcp             # Disable MCP routes on the same port
npx rebebuca --help               # Show all options

Headless CLI (no web server)

Useful for scripts, terminals, and AI agents that prefer a plain CLI over MCP.

# List CLI flags / subcommands, saved user tasks, or both (--json for machine-readable)
npx rebebuca list options
npx rebebuca list tasks
npx rebebuca list all --json

# Run a saved user task by exact id or fuzzy match on name (see note below)
npx rebebuca run <id-or-name>

# Run an arbitrary shell command (login shell), without starting Rebebuca
npx rebebuca -- pnpm test

# Install tab completion (fuzzy task suggestions for: rebebuca run <tab>)
eval "$(npx rebebuca complete zsh)"
source <(npx rebebuca complete bash)

Task source for list / run: tasks are read from userGroups in ~/.rebebuca/store.json (user-defined groups in the app). Folder-scanned tasks (VS Code / npm scripts, etc.) are not included until they exist in that store.

Restrictions: run does not execute SSH-only tasks, “system terminal” tasks, or other modes that require the full UI.

Requirements: Node.js 18 or higher


✨ Features

  • 🚀 Quick Launch - Create and run configurations with one click, no need to memorize complex commands
  • Real-time Output - View command execution results in real-time with multi-tab support
  • 📝 Configuration Management - Support for advanced options like working directory and environment variables
  • 🕒 History Tracking - Automatically save run history for easy re-execution
  • 🎨 Modern UI - Beautiful dark theme interface built with Naive UI
  • 💾 Persistent Storage - Configurations and history data are automatically saved and persist across restarts
  • 🖥️ Cross-platform - Supports Windows, macOS, and Linux
  • 🌐 Web-based - Runs entirely in your browser via a local Node.js HTTP server
  • ⌨️ CLI - list, run, -- <cmd>, and shell completion for automation and AI workflows

📸 Preview

🛠️ Tech Stack

Frontend

  • Vue 3 - Progressive JavaScript framework
  • TypeScript - Type-safe JavaScript superset
  • Naive UI - Modern Vue 3 component library
  • Pinia - Lightweight state management library for Vue
  • Vite - Next generation frontend build tool

Backend (Node.js)

  • Node.js - HTTP + WebSocket server (replaces Rust/Tauri)
  • node-pty - Native PTY terminal emulation
  • ws - High-performance WebSocket library

📦 Development Setup

Prerequisites

  • Node.js >= 18.0.0
  • npm or pnpm

Development Server

  1. Install dependencies
npm install
  1. Start development server (mock backend)
npm run dev:web
  1. Start with Node.js backend (full server mode)
npm run dev:server
  1. Build the npm-publishable bundle
npm run build:server-app

⌨️ Web UI

Running configurations

  • Click the play button ▶️ next to a configuration in the left sidebar
  • The command runs in a new tab with live output
  • Multiple configurations can run at once

Managing tabs

  • Restart — run the same configuration again
  • Stop — terminate the process
  • Clear — clear console output
  • Scroll to Bottom — jump to the latest output
  • Edit — change the configuration for the current tab

Run history

  • The side panel shows recent runs
  • Use rerun to execute a past command again
  • History can be cleared

📁 Project Structure

rebebuca/
├── app/                      # Nuxt 3 app (UI)
│   └── pages/
├── src/                      # Shared Vue/TS (used by app)
│   ├── components/          # Vue components
│   └── stores/              # Pinia state management
├── node-server/              # Node.js HTTP + WebSocket server
│   ├── server.js
│   ├── cli-subcommands.js    # Headless CLI (list / run / completion)
│   └── handlers/
├── bin/rebebuca.js          # CLI entry (npx rebebuca)
├── dist/server/             # Built static UI (from Nuxt generate)
├── public/                  # Static assets
└── package.json             # Project dependencies

🔨 Building

Development

# Frontend dev (Vite) + backend runs separately
pnpm dev:server

Production build (for npm / npx rebebuca)

pnpm run build:server-app

This runs Nuxt static build and outputs to dist/server. The Node server serves from that directory.

Release & publish to npm

Push a version tag to trigger GitHub Actions to build and publish:

./scripts/release.sh 0.5.6   # bumps version, commits, creates v0.5.6, pushes

CI runs build:server-app then pnpm publish. Ensure NPM_TOKEN is set in repo secrets.

🤝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork this repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 Development Guidelines

Recommended IDE Setup

Code Standards

  • Use TypeScript strict mode
  • Follow Vue 3 Composition API best practices
  • Use <script setup> syntax sugar
  • Keep code clean and maintainable

📄 License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

🙏 Acknowledgments

  • Vue.js - Progressive JavaScript framework
  • Nuxt - Vue-based static/build setup
  • Naive UI - Beautiful Vue 3 component library
  • Vite - Fast frontend build tool