Simple CLI output helpers.
Output formatted information to the CLI.
require 'bogo/ui'
ui = Bogo::Ui.new(
  app_name: 'TestApp'
)
ui.info 'This is information'
ui.warn 'This is a warning'
ui.error 'This is an error'
ui.info "This is information with #{ui.color('color', :bold, :green)}"
result = ui.ask('Type a word')
ui.info "You provided: #{result}"This is a table helper. Under the hood it uses the Command Line Reporter with a few modifications. Direct usage:
require 'bogo/ui'
ui = Bogo::Ui.new(app_name: 'TestApp')
Bogo::Ui::Table.new(ui) do
  table do
    row do
      column 'Name'
      column 'Age'
    end
    row do
      column 'me'
      column '100'
    end
  end
end.displayThis helper allows for appending data to an existing table. Useful for when polling for updates and wanting to keep the existing table structure:
require 'bogo/ui'
ui = Bogo::Ui.new(app_name: 'TestApp')
tbl = Bogo::Ui::Table.new(ui) do
  table do
    row do
      column 'Name'
      column 'Age'
    end
    row do
      column 'me'
      column '100'
    end
  end
end
tbl.display
tbl.update do
  row do
    column 'you'
    column '50'
  end
end
tbl.display- Repository: https://github.com/spox/bogo-ui
- Command Line Reporter: https://github.com/wbailey/command_line_reporter