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

@cj-ways/orgclone

v0.5.0

Published

Clone entire GitHub organizations or GitLab groups with one command. Supports public and private repos, SSH, token auth, and config files.

Readme

orgclone

Clone entire GitHub organizations or GitLab groups with one command.

npm license

npm install -g @cj-ways/orgclone

Quick Start

# Clone a GitHub org (GitHub is the default)
orgclone clone my-org

# Interactively pick which repos to clone
orgclone clone my-org --pick

# Clone a GitLab group
orgclone clone my-group --gitlab

# Preview what would be cloned
orgclone clone my-org --dry-run

# Change defaults permanently
orgclone default platform gitlab
orgclone default dest ~/projects

Repos land in ~/Desktop/my-org/ by default. Run it again on the same folder and it git pulls everything — no re-cloning.


Install

| Method | Command | |--------|---------| | npm | npm install -g @cj-ways/orgclone | | pip | pip install orgclone | | Go | go install github.com/cj-ways/orgclone@latest | | Binary | Download from Releases |


All Options

orgclone clone <name> [options]

  name                  org name (GitHub) or group path (GitLab)

  --gitlab              Use GitLab instead of the default platform
  --pick                Interactively select which repos to clone
  -t, --token           API token (or set GITHUB_TOKEN / GITLAB_TOKEN)
  -d, --dest            Destination folder (default: ~/Desktop/<name>)
  -e, --exclude         Comma-separated repo names to skip
      --skip-archived   Skip archived repositories
      --gitlab-url      Self-hosted GitLab URL (default: https://gitlab.com)
      --dry-run         List repos without cloning

orgclone default <setting> <value>

  platform    github or gitlab
  dest        path to clone into (e.g. ~/projects)

  Examples:
    orgclone default platform gitlab
    orgclone default dest ~/projects

No token? No problem

For public repos, no token needed — orgclone calls git clone the same way you would manually. If you already have SSH keys or a credential manager set up (you can git push without a password), private repos work too with no extra config.

A token only adds value when you want auth to work automatically on a fresh machine or in CI.


Why orgclone over alternatives?

| Feature | orgclone | others | |---------|----------|--------| | GitHub support | ✓ | ✓ | | GitLab support | ✓ | ✗ | | Self-hosted GitLab | ✓ | ✗ | | Auto-update on re-run | ✓ | some | | Config file | ✓ | ✗ | | Dry run | ✓ | ✗ | | Skip archived | ✓ | ✗ | | npm + pip + Go install | ✓ | ✗ | | No runtime dependency | ✓ (single binary) | ✗ |


Config file

Run orgclone init to generate ~/.orgclone.yml:

default_dest: ~/Desktop
default_platform: github   # or gitlab

github:
  token: ghp_xxx        # or: export GITHUB_TOKEN=ghp_xxx

gitlab:
  token: glpat_xxx
  url: https://gitlab.com   # change for self-hosted

orgs:
  my-org:
    exclude:
      - old-repo
      - scratch

CLI flags always override config file values.


Links

License

MIT