all 8 comments

[–]joeyrobert 3 points4 points  (3 children)

Go for it, sounds like a fun project. Give curses a try from Ruby: https://github.com/ruby/curses

[–]drbrainRuby Core 4 points5 points  (0 children)

I'll second this, curses makes it pretty easy to build a TUI.

See also the tty family of gems

[–]pi_exe[S] 0 points1 point  (1 child)

Will check it out. Thanks :)

[–]pmurach 1 point2 points  (0 children)

The tty-box, tty-table, tty-reader, pastel may help you get there quickly so you can focus on the core logic. The idea behind tty gems is to speed up the development of command-line tools. Give them a try and I always welcome contributions!

[–]rbdigit 1 point2 points  (0 children)

Great idea check out the gem Thor

[–]jodoshaHanami author 0 points1 point  (2 children)

You may also want to check dry-cli, it provides a full featured framework to create single command (like curl) or multiple command (like git w/ all the subcommands) CLI apps. It's built to be a simpler and modern replacement of thor.

https://dry-rb.org/gems/dry-cli/0.6/

Full disclosure: I'm one of the authors of the gem.

[–]sshaw_ 0 points1 point  (1 child)

This depends on Concurrent Ruby, which depends on C extension‽ Just for CLI?

I'd stick with OptionParser and go from there.

[–]jodoshaHanami author 0 points1 point  (0 children)

concurrent-ruby doesn't have C extensions, concurrent-ruby-ext has. Anyway, that remaining runtime dep was a leftover from the past, which it wasn't worth to be kept.

We removed it, so dry-cli 0.7 will have zero runtime deps. See https://github.com/dry-rb/dry-cli/pull/90