The Ruby terminal apps toolkit

Everything you need to build command line apps

  • Flexible

    TTY gems let you solve command line problems in the same way Unix philosophy of focused tools does. You can string gems together as you please.

  • Reusable

    Each gem is an independent component and can be combined in many fantastic ways with other libraries outside of tty.

  • Reliable

    All tty components are small packages that do one thing well and hence are well tested.

  • Simple

    Each tty gem is a small package of straightforward api calls. The source is small and easy to understand.

Explore gems

Mix & match what you need to build your command line tool

  • tty-prompt

    A beautiful and powerful interactive command line prompt.

    Learn more
  • tty-progressbar

    A flexible progress bars drawing in terminal emulators.

    Learn more
  • tty-spinner

    A terminal spinner for tasks with non-deterministic time.

    Learn more
  • tty-command

    Execute shell commands with pretty logging.

    Learn more
  • tty-table

    A flexible and intuitive table output generator.

    Learn more
  • tty-markdown

    Convert a markdown document or text into a terminal friendly output.

    Learn more
  • tty-reader

    A set of methods for processing keyboard input in character, line and multiline modes.

    Learn more
  • tty-file

    File and directory manipulation utility methods.

    Learn more
  • tty-config

    Define, read and write any Ruby app configurations with a penchant for terminal clients.

    Learn more

View all gems

Quick Start

While installing TTY is simple, there are a few requirements

TTY is installed and managed via rubygems, the ruby package manager.

To install all the tty components on your system, you need to install tty gem.

$ gem install tty

Alternatively, you can lookup your favourite tty gem and install it directly.

$ gem install tty-prompt

Building Console Apps

You are one step away from generating your terminal application

Once tty gem is installed you gain access to teletype which together with all tty gems provides everything you need to build great command line applications.

$ teletype new app
# Your teletype project has been created successfully.
# Run "teletype help" for more commands.

Learn more on github

Trusted by

Devs at these companies use tty gems