This is an automated archive.
The original was posted on /r/opensource by /u/omijam on 2023-08-20 14:42:43+00:00.
Would love feedback on it. AKA. ROAST ME.
I created monotab it's an interactive cli tool (built in JS) that shows a filterable list of suggestions for directories you would potentially want to cd into. Upon selection is automatically opens a terminal tab and changes the tab's directory to the directory you selected.
It works from any point in the directory tree under a repository and by default suggests all submodules it finds under the git repository.
It also supports a configuration file called .monotabrc.json
that allows you to use glob patterns to add bare folders (which aren't git submodules).
Installation
bash npm install -g monotab
Usage
bash mtab
Backstory
We love faux-mono repos. As in we create separate git repos for everything to allow us to easily deploy via CI/CD pipelines but we have this one repo that adds all other repos as git submodules. This repo usually has a docker-compose.yml
file and helps us with development.
The only problem was that using the GUI in our IDE to open the integrated terminal was a sucky experience, but so was tediously CD-ing everywhere.
That's when we introduced a script in the root of the dev repo called ./terminal-info.mjs
. We finally released it onto npm hoping others can benefit too.