1.2.9 • Published 8 months ago

quickcd v1.2.9

Weekly downloads
-
License
CC0-1.0
Repository
github
Last release
8 months ago

npm NPM GitHub issues npm bundle size npm GitHub forks GitHub Repo stars

quickcd

A quick command to interactively filter and select a directory to cd into inside a repo (or any folder with a .quickcdrc.json file).

quickcd demo

Note: quickcd was previously called monotab, feel free to replace monotab with quickcd in the demo above as the cli subcommands and behaviours are unchanged.

Features

  • Quickly cd into any subproject directory inside a (mono)repo.
  • Interactive directory picker with filtering.
  • Filter as first argument for faster filtering.
  • Automatic repo root detection (allow you to run quickcd from any nested directory inside monorepo)
  • Automatically duplicate tab and cd for:

    • Gnome Terminal (Linux)
    • Konsole (Linux)
    • Terminal (MacOS)
  • Automatically picks up submodules and nested git repos.

  • Automatically picks up npm workspaces, yarn workspaces and pnpm workspaces.
  • Include any directory (even if they aren't submodules) via glob patterns.
  • Exclude any directory.
  • Automatically cds if there is only one match.

Note: quickcd works best with:

  1. monorepos that utilize npm/yarn/pnpm workspaces
  2. repositories with git submodules

Installation

npm install -g quickcd

# or with pnpm
pnpm add -g quickcd

Install bash/zsh aliases.

quickcd --setup --alias=quickcd,qcd

Supported On

quickcd uses mklement0/ttab under the hood to create terminal tabs. As such the following terminals are currnently supported on Linux and MacOS.

  1. Linux
    • Gnome Terminal
    • Konsole
  2. MacOS
    • Terminal (not tested)
    • iTerm2 (not tested)

Roadmap

  • Windows Terminal Support
  • Directory Labels

Known Issues

enquirer/enquirer has a hard time handling brackets as input.

License

CC0-1.0 (public domain)