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

vibe_checkpoint

v1.0.0

Published

Vibe Checkpoint CLI - Superfast drafting without Git

Downloads

21

Readme

Vibe Checkpoint 🚀

License: MIT

English | Tiếng Việt | Español | Français | Deutsch | Italiano | Português | Русский | العربية | हिन्दी | 日本語 | 한국어 | 中文

vibe save before you break things. vibe back when you do.

Vibe Checkpoint is a compact CLI tool that helps you superfast draft your project without worrying about the complex operations of Git (commit messages, branching, stashing).

Created exclusively for "vibe coders" - people who just want their code to run, quickly experiment with crazy ideas, and immediately roll back if something goes wrong.

🌟 Features

  • Superfast Save (vibe save): Quickly zip your working directory and store it safely in the .vibe folder.
  • Auto-Save (vibe watch): Automatically save a checkpoint when you stop typing/editing.
  • Time Travel (vibe back): Choose an old checkpoint and restore the entire directory back to that exact state with a single action.
  • Auto Cleanup (vibe clean): Automatically delete old zip files based on count (--keep) or age (--before). Supports automatic cleanup via .vibe/config.json.
  • Ignore Garbage (.vibeignore): Works exactly like .gitignore, preventing the zipping of node_modules or .git.
  • Code Diff (vibe diff): Compare two checkpoints and view the red/green text changes directly in your terminal.

📸 Screenshots

| CLI Menu | Save View | | :---: | :---: | | | |

📦 Installation

Since the project is written in Node.js (TypeScript), you need Node.js installed on your machine.

  1. Clone this project folder to your machine.
  2. Open terminal in the project folder, run the following command to install packages:
    npm install
  3. Link the CLI to the global system to use it anywhere:
    npm link

Now you can open any project on your machine and type the vibe command!

💻 Usage Guide

1. Save a Checkpoint

Before starting a code refactor or testing a risky new library, save a draft:

vibe save "before installing react-router"

The tool will automatically exclude folders like node_modules or dist to save extremely fast.

2. View Checkpoint History

To review what versions you have saved:

vibe list

3. Restore a Checkpoint

If your new idea fails, you can easily go back to the old version:

vibe back cp_001

Or if you don't remember the ID, just type vibe back and the system will display an interactive menu for you to select using the arrow keys!

4. Cleanup Checkpoints

Keep the 10 most recent saves and delete older versions to free up space:

vibe clean --keep 10

Or delete checkpoints older than 2 days / 12 hours:

vibe clean --before 2d
vibe clean --before 12h

5. Delete a specific Checkpoint

If you want to delete a specific checkpoint by its ID or index:

vibe delete 5
vibe delete cp_005

5. Auto-Save (Watch)

Automatically create a checkpoint when you are idle (stop typing/editing) for a specified number of seconds:

vibe watch --idle 30

6. Compare Source Code (Diff)

If you want to know what files you have changed, what lines of code you added or removed between 2 versions (e.g., version 1 and 2):

vibe diff 1 2

8. Change Language (i18n)

Change the CLI language globally (supports 13 languages):

vibe lang vi

⚙️ Configuration (.vibe/config.json)

You can enable Auto-Clean to automatically delete old checkpoints when creating new ones:

{
  "maxCheckpoints": 50,
  "autoClean": true
}

🏗 Architecture (Under the hood)

  • Storage (.vibe/): When you save a checkpoint for the first time, the system will create a hidden .vibe folder right in your current directory.
  • Snapshot Manager: Uses the archiver library to zip code into a file, saved to .vibe/snapshots/cp_00x.zip.
  • Metadata Manager: The .vibe/history.json file acts as a notebook recording the time and notes of each checkpoint.
  • Ignore files: By default, the tool will ignore node_modules, .git, dist, and the .vibe folder. You can customize this by creating a .vibeignore file in the root of the project folder.

🔮 Roadmap

  • [x] vibe diff <id1> <id2>: Compare 2 checkpoints and display detailed red/green text for changed lines of code.
  • [ ] vibe push: Automatically convert the current checkpoint into a standard Git commit for those who want to push to GitHub.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


Created to keep the coding rhythm from ever stopping. Happy Coding! 🎶