DEV Community

Cover image for 5 CLI Tools That Will Increase Your Velocity and Code Quality
Gal Elmalah
Gal Elmalah

Posted on • Updated on • Originally published at galelmalah.com

5 CLI Tools That Will Increase Your Velocity and Code Quality

Everyone likes CLI's (or maybe it's just me).

I have compiled a list of the CLI's I use on a daily basis, some are well known some are less so, but all of them help me get things done faster and some even help me keep my code cleaner.

This list is ordered from most used to least used on a daily basis.

1. z - Go from A to Z with ease

This one will make you look like a ninja and help you boost your productivity!
In a gist z helps you navigate your file system faster.

Basically, it ranks all the directories you visit, and given a query, it will take you to the directory that will most likely match your query.

z in action


2. Scaffolder - Generate boilerplate code with ease

Hate copy-pasting files?
You want to make sure all of your modules follow the same structure?
You want to generate boilerplate code i.e react components or a complete project set up in an intuitive and easy way?
Scaffolder got your back, you can define templates with dynamic parameters and generate them easily with a CLI or a vscode extension.

In essence, it will save you tons of time

There are tons of other features as well, like sharing templates via GitHub or defining your own functions to be run inside your templates.

Scaffolder in action

P.S, I wrote it, so I'm kind of biased. Feel free to leave a star or a feature request πŸ˜„


3. tldr-pages - Just show me how to use this

From the project repo:

"The tldr-pages project is a collection of community-maintained help pages for command-line tools, that aims to be a simpler, more approachable complement to traditional man pages."

Essentially you'll get a bunch of useful examples for the command you specified πŸ‘Œ

tldrgif


4. np - Publish npm packages like a pro

Hate going through the same routine each time you publish your npm package? np will help you automate this process while adding many other goodies like GitHub release tags and multiple versions of increment strategies.
It's described well in the project repo "A better npm publish".

np in action


5. lerna - One repo to rule them all

Did you ever develop multiple packages that depend on one another? if so, then you know the pain of npm links, building, testing, and publishing all of the relevant packages.
If you didn't get the pleasure of managing this stuff manually, then let me save you the trouble and introduce you to lerna your new best friend πŸ˜„

You might also want to check yarn workspaces


Go ahead and give these CLI's a try and tell me what you think in the comment section

Check out my other blog posts on dev.to

Got any CLI tools that help you increase your dev velocity and quality? Leave a comment and share them with the rest of usπŸ˜„

Top comments (7)

Collapse
 
toyo_tomi profile image
Sacquer

Nice!

I tend to use:

Haven't tried, but surely will:

  • asdf (Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more): github
Collapse
 
galelmalah profile image
Gal Elmalah

asdf and Lazydocker look great! thanks for sharing!

Collapse
 
drazik profile image
drazik

z looks great but I understand that it only word with ZSH. Are there alternatives for other shells?

Collapse
 
moopet profile image
Ben Sinclair

The linked repo isn't to Z, it's to ZSH-z, and the readme has this to say:

ZSH-z is a native ZSH port of rupa/z, a tool written for bash

I haven't looked further, but that's you set for bash, and I'd infer there are probably agnostic versions out there somewhere.

Collapse
 
galelmalah profile image
Gal Elmalah

you are absolutely correct!
there are installation instruction in here for the bash version

Collapse
 
galelmalah profile image
Gal Elmalah

You got github.com/wting/autojump which is pretty awesome as well

Collapse
 
drazik profile image
drazik

autojump works like a charm, thanks a lot :)