DEV Community

Using better CLIs

Nikita Sobolev on October 07, 2017

For people who spend half of their lives in a terminal user experience and functionality is highly important. Making you a happier person. Here ar...
Collapse
 
rhymes profile image
rhymes

Thanks for the tips, so many tools I didn't know about!

My turnoff with pipenv is that it requires the user to enter a "sub" shell or use "pyenv run" to load the environment instead of just loading it in the current shell (like virtualenv activate does). The idea of the lock file was truly needed in Python realm though

Collapse
 
sobolevn profile image
Nikita Sobolev • Edited

pipenv is still evolving. Right now it has some issues with dependencies resolution on a big projects. And sub-shell bothers me too.

But it already is so much better than pip!

Collapse
 
rhymes profile image
rhymes

ahha definitely! I wonder if "pipenv run" has any impacts in production. I've never deployed a project using pipenv. I'll have to study it a bit more.

Thanks!

Thread Thread
 
sobolevn profile image
Nikita Sobolev

Then take a look at our django template: github.com/wemake-services/wemake-...

It uses pipenv for production (also docker, gitlab ci, and caddy). Works perfectly fine!

Thread Thread
 
rhymes profile image
rhymes

Thanks Nikita, there's a lot of good stuff in there! :-)

Collapse
 
lukebearl profile image
Luke Bearl

Just a note: for the pgcli stuff: that is part of the dbcli project, so there are other CLIs for things like MySQL, SQL Server, etc.

Awesome article, I'd never seen doitlive before, but I'll def be checking that out.

Collapse
 
bram85 profile image
Bram Schoenmakers

For todo lists, try topydo, a powerful application based on the todo.txt format. It has three interfaces: a command line interface, a prompt and a text based graphical user interface.

(Disclaimer: I'm the author. A similar application is TaskWarrior)

Collapse
 
derbingle profile image
derBingle

Thanks for mentioning glances, I missed that one somewhere along the way.

I've started using exa instead of the default ls. Really nice!

Collapse
 
sobolevn profile image
Nikita Sobolev

Thanks! I have already seen it, but I actually don't see any difference between ipython and ptpython.

Could you please provide an example?

Collapse
 
lirantal profile image
Liran Tal

if you're already on the topic of better CLIs then... Dockly for a docker containers dashboard / management straight from the terminal

Collapse
 
dserodio profile image
Daniel Serodio

jo is a nice complement for jq :)

Collapse
 
djangotricks profile image
Aidas Bendoraitis • Edited

bpython is also a nice tool. It gives you features like autocomplete, history of previous commands, syntax highlighting, and more.

Collapse
 
goku132 profile image
Michael

Thanks for the article so many new things to review and explore.

Collapse
 
marlon_schultz profile image
Marlon Schultz

If you are using AWS on the CLI a lot, aws-shell comes in quite handy with autocompletion. However it is more a standalone cli tool, than just a CLI tool.

github.com/awslabs/aws-shell

Collapse
 
spences10 profile image
Scott Spence

These are awesome thank you, and thanks for the examples 👌

Collapse
 
fasil profile image
fasil

thanks for sharing,

Collapse
 
dhairav profile image
Dhairav Mehta

The Fish shell is an intelligent CLI tool. A worthy replacement for Bash.

Collapse
 
michaelc0n profile image
michael saenz

Great tips and tools! Thx!

Collapse
 
jacoby profile image
Dave Jacoby

Had been using httpie and jq on occasion. (I don't write new interactions with REST APIs daily.)

I hadn't known about mycli. I expect I shall overuse and love it a lot.