Bini
A toolbox to help me rapidly build/deploy a cli. Filled with assumptions about how I think a CLI should behave.
Build Status
master | |
development |
Installation
To install:
% gem install bini
To use inside of an application, add this to the your gemfile:
% gem 'bini'
and run bundle to make it available:
% bundle
Usage
Bini is broken up into a few pieces, always include this first:
require 'bini'
Optional components can be loaded like this:
require 'bini/config'
require 'bini/optparser'
require 'bini/log'
API
Generated documentation is available via yard
.
Examples and wiki coming if they are ever needed.
Testing
In theory, testing is complete, in practice it's a work in progress.
Design philosophy
If such a thing can be said.
- Whenever possible, sane defaults will be supplied.
- A minimum amount of configuration before execution.
- If it requires a large chunk of requires, put it in a sub gem.
- Speed is of the utmost importance.
- Whenever possible, use stuff out of the stdlib.
Contributing
I don't have rules here, more guidelines.
- Try to make the branch name clear, words like feature/issue/bug help.