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

zeet

v1.0.11

Published

Git-like Version Control System

Downloads

68

Readme

zeet ― A Distributed Source Control System (Git-like)

This project implements a distributed source control system in the style of Git. It is called zeet. It provides core functionalities required for version control, such as initializing repositories, staging files, committing changes, and more. The tool is built to manage repositories on the local disk and is designed to be used as a CLI tool.

Features

  • Initialize Repository: Create a repository in a directory, with the repository data stored in a .zeet subdirectory.

  • Staging Files: Add files to the staging area. (zeet add .)

  • Committing Changes: Commit staged files with messages.

  • Branching: Create and switch between branches.

  • Merging: Merge branches with parallel work into mainline. Fast-forward and 3-way merge are intelligently used to merge.

  • Conflicts marking: Conflicts are detected during merge and affected region in files are marked with symbols: <<<<<<<, ======= and >>>>>>>.(conflicts require manual resolution)

  • File Ignoring: Specify files to be ignored during commits in .zeetignore file. Will look for .gitignore file if missing.

  • Viewing Commit History: View the commit history with detailed information in a colorized output.

  • Diffs: View differences between commits and branches.

    Upcoming features

    • Cloning Repositories: Clone a repository locally, copying the contents of the original repository to a new directory.

The project doesn't yet include advanced features like rebasing or conflict resolution beyond detection, but it covers the essential functionalities of version control systems like Git.

Software requirements

Zeet is platform-agnostic because it leverages Node.js, allowing it to run on any system with Node.js installed. You need to ensure you have node.js installed on your computer. The recommended version is at least version >=20.

Installation

Install globally on your computer:

npm install -g zeet

This will allow you to use the zeet command in any repository.

Usage

Once installed, you can use it directly from the command line. Here are some example commands:

  • Initialize a repository:

    zeet init

    This creates a new repository in the current directory, storing the repository data in a .zeet subdirectory.

  • Stage files:

    zeet add <file1> <file2> ...

    This stages the specified files, preparing them for commit.
    Alternatively, you can use:

    zeet add .
  • View commit status:

    zeet status

    Shows files added to staging area and those that are not. Convenient to check files that will go into the next commit.

  • Commit changes:

    zeet commit -m "Commit message"

    This commits the staged changes with the provided commit message.

  • View commit history:

    zeet log

    This displays the commit history, showing commit hashes, messages, and timestamps.

  • Create branches:

    zeet branch <branch-name>

    This creates a new branch.

    • Switch branches:
    zeet switch <branch-name>

    This switches to a created branch.

  • Merge branches:

    zeet merge <branch-name>

    This merges <branch-name> into the current checked out branch, with conflict detection.
    Fast-forward merge strategy is used when history between the branches is linear. 3-way merge is used otherwise.

  • View diffs:

    zeet diff <commit-hash>

    This shows the differences between working directory and the commit. In place of <commit-hash>, you can also specify branch or path to a file under repository.

    Other than diffing with the working directory, you can also diff between 2 commits, branches or files. For example:

    # Compare changes between commits
    zeet diff <commit-hash1> <commit-hash2>
    
    # Compare changes between branches
    zeet diff <stem> <feature-branch>
    
    # Compare differences of 'file1' in working directory with 'file1' in 'feature-branch'
    zeet diff <file1> <feature-branch>
    
    # Compare changes in files in workdir with the last recent commit
    zeet diff <file1> <file2>
  • Ignore files: Create a .zeetignore file in your repository root and list the files to be ignored.
    It accepts the same patterns as with .gitignore.

Note: To view more helpful information about a command, you can use zeet <command-name> --help

Contribution

Feel free to open issues or submit pull requests to contribute to the project. Contributions are welcome!

License

Distributed under the MIT License. See LICENSE for more information.

Author

Zacky


Star✨ the REPO👍