CLI Option Parsers

highline

A high-level IO library that provides validation, type conversion, and more for command-line interfaces. HighLine also includes a complete menu system that can crank out anything from simple list selection to complete shells with just minutes of work.

Rubygem highline

Total Downloads
12392299
Releases
43
Current Version
1.6.21
Released
2014-02-28 00:00:00 UTC
First Release
2005-04-29 04:00:00 UTC
Depends on following gems
Depending Gems
699

Github JEG2/highline

Watchers
385
Forks
52
Development activity
Less active
Last commit
2014-02-28 18:54:54 UTC
First commit

Slop

A simple DSL for gathering options and parsing the command line

Rubygem slop

Total Downloads
6632918
Releases
61
Current Version
3.5.0
Released
2014-03-12 00:00:00 UTC
First Release
2010-11-26 00:00:00 UTC
Depends on following gems
Depending Gems
123

Github injekt/slop

Watchers
486
Forks
22
Development activity
Less active
Last commit
2013-07-25 09:44:36 UTC
Contributors
21
Issues

cocaine

A small library for doing (command) lines

Rubygem cocaine

Total Downloads
4163791
Releases
16
Current Version
0.5.4
Released
2014-03-28 00:00:00 UTC
First Release
2011-05-18 04:00:00 UTC

Github thoughtbot/cocaine

Watchers
436
Forks
32
Development activity
Less active
Last commit
2014-01-27 09:35:38 UTC
Contributors
26
Issues

mixlib-cli

A simple mixin for CLI interfaces, including option parsing

Rubygem mixlib-cli

Total Downloads
3638454
Releases
7
Current Version
1.4.0
Released
2013-12-05 00:00:00 UTC
First Release
2009-05-11 15:00:00 UTC
Depends on following gems
Depending Gems
71

Github opscode/mixlib-cli

Watchers
85
Forks
30
Development activity
Inactive
Last commit
2013-12-05 18:24:30 UTC
First commit

Trollop

Trollop is a commandline option parser for Ruby that just gets out of your way. One line of code per option is all you need to write. For that, you get a nice automatically-generated help page, robust option parsing, command subcompletion, and sensible defaults for everything you don't specify.

Rubygem trollop

Total Downloads
1702707
Releases
26
Current Version
2.0
Released
2012-08-14 00:00:00 UTC
First Release
2007-01-29 08:00:00 UTC

commander

The complete solution for Ruby command-line executables. Commander bridges the gap between other terminal related libraries you know and love (OptionParser, HighLine), while providing many new features, and an elegant API.

Rubygem commander

Total Downloads
621872
Releases
16
Current Version
4.1.6
Released
2014-02-11 00:00:00 UTC
First Release
2009-10-08 10:00:00 UTC
Depends on following gems
Depending Gems
199

Github visionmedia/commander

Watchers
642
Forks
47
Development activity
Less active
Last commit
2014-02-11 17:10:55 UTC

gli

Build command-suite CLI apps that are awesome. Bootstrap your app, add commands, options and documentation while maintaining a well-tested idiomatic command-line app

Rubygem gli

Total Downloads
379548
Releases
55
Current Version
2.9.0
Released
2014-01-19 00:00:00 UTC
First Release
2009-04-19 04:00:00 UTC
Depends on following gems
Depending Gems
188

Github davetron5000/gli

Watchers
509
Forks
56
Development activity
Less active
Last commit
2014-02-14 17:07:14 UTC
Contributors
21
Issues
Wiki pages

Choice

Choice is a simple little gem for easily defining and parsing command line options with a friendly DSL.

Rubygem choice

Total Downloads
811337
Releases
7
Current Version
0.1.6
Released
2012-03-26 00:00:00 UTC
First Release
2006-04-30 07:00:00 UTC
Depends on following gems
Depending Gems
68

Github defunkt/choice

Watchers
148
Forks
17
Development activity
Inactive
Last commit
2012-03-26 21:09:05 UTC
Top contributors
Contributors
3

clamp

Clamp provides an object-model for command-line utilities. It handles parsing of command-line options, and generation of usage help.

Rubygem clamp

Total Downloads
480653
Releases
25
Current Version
0.6.3
Released
2013-11-14 00:00:00 UTC
First Release
2010-11-01 13:00:00 UTC
Depends on following gems
Depending Gems
83

Github mdub/clamp

Watchers
155
Forks
18
Development activity
Less active
Last commit
2013-11-14 02:55:39 UTC
First commit
Contributors
9
Issues
Wiki pages

methadone

Methadone provides a lot of small but useful features for developing a command-line app, including an opinionated bootstrapping process, some helpful cucumber steps, and some classes to bridge logging and output into a simple, unified, interface

Rubygem methadone

Total Downloads
52287
Releases
30
Current Version
1.3.2
Released
2014-02-23 00:00:00 UTC
First Release
2011-09-12 00:00:00 UTC

Github davetron5000/methadone

Watchers
371
Forks
28
Development activity
Less active
Last commit
2013-12-26 19:32:55 UTC
Contributors
12
Issues
Wiki pages

cmdparse

cmdparse provides classes for parsing commands on the command line; command line options are parsed using optparse or any other option parser implementation. Programs that use such command line interfaces are, for example, subversion's 'svn' or Rubygem's 'gem' program.

Rubygem cmdparse

Total Downloads
302588
Releases
13
Current Version
2.0.6
Released
2014-04-05 00:00:00 UTC
First Release
2004-09-27 04:00:00 UTC
Depends on following gems
Depending Gems
23

Github gettalong/cmdparse

Watchers
3
Forks
1
Development activity
Inactive
Last commit
2014-04-05 09:04:20 UTC
First commit
Top contributors
Contributors
1
Issues

docopt

Isn't it awesome how `optparse` and other option parsers generate help and usage-messages based on your code?! Hell no! You know what's awesome? It's when the option parser *is* generated based on the help and usage-message that you write in a docstring! That's what docopt does!

Rubygem docopt

Total Downloads
23325
Releases
5
Current Version
0.5.0
Released
2012-09-01 00:00:00 UTC
First Release
2012-06-03 00:00:00 UTC
Depends on following gems
Depending Gems
23

Github docopt/docopt.rb

Watchers
233
Forks
14
Development activity
Inactive
Last commit
2012-09-25 06:03:21 UTC
First commit
Top contributors
Contributors
3
Issues

cri

Cri allows building easy-to-use commandline interfaces with support for subcommands.

Rubygem cri

Total Downloads
117076
Releases
18
Current Version
2.6.0
Released
2014-04-05 00:00:00 UTC
First Release
2009-11-01 01:00:00 UTC
Depends on following gems
Depending Gems
16

Github ddfreyne/cri

Watchers
33
Forks
4
Development activity
Less active
Last commit
2014-01-21 09:03:01 UTC
First commit
Top contributors
Contributors
5
Issues
Wiki pages

acclaim

Command-line option parser and command interface.

Rubygem acclaim

Total Downloads
100932
Releases
21
Current Version
0.5.1
Released
2012-06-26 00:00:00 UTC
First Release
2011-12-16 00:00:00 UTC
Depends on following gems
Depending Gems
1

Github matheusmoreira/acclaim

Watchers
6
Forks
0
Development activity
Inactive
Last commit
2012-07-27 01:38:30 UTC
Top contributors
Contributors
1
Issues
Wiki pages

quickl

Quickl helps you creating commandline ruby programs. From simple commands with options to complex delegators with subcommands, global and local options.

Rubygem quickl

Total Downloads
22620
Releases
9
Current Version
0.4.3
Released
2012-02-16 00:00:00 UTC
First Release
2010-12-23 23:00:00 UTC
Depends on following gems
Depending Gems
10

Github blambeau/quickl

Watchers
53
Forks
3
Development activity
Inactive
Last commit
2012-02-16 15:13:10 UTC
Top contributors
Contributors
3
Issues

clap

Clap is a small library that can be bundled with your command line application. It covers the simple case of executing code based on the flags or parameters passed.

Rubygem clap

Total Downloads
6945
Releases
3
Current Version
1.0.0
Released
2012-03-29 00:00:00 UTC
First Release
2010-10-10 03:00:00 UTC
Depends on following gems
Depending Gems
19

Github soveran/clap

Watchers
57
Forks
6
Development activity
Inactive
Last commit
2014-01-29 03:12:26 UTC
Top contributors
Contributors
3
Issues

Optitron

Sensible options parsing

Rubygem optitron

Total Downloads
35628
Releases
28
Current Version
0.3.3
Released
2011-07-20 07:00:00 UTC
First Release
2010-08-15 07:00:00 UTC

getopt

The getopt library provides two different command line option parsers. They are meant as easier and more convenient replacements for the command line parsers that ship as part of the Ruby standard library. Please see the README for additional comments.

Rubygem getopt

Total Downloads
50729
Releases
15
Current Version
1.4.1
Released
2011-07-17 00:00:00 UTC
First Release
2005-10-06 06:00:00 UTC

Github djberg96/getopt

Watchers
6
Forks
1
Development activity
Inactive
Last commit
2011-07-17 20:49:08 UTC
Top contributors
Contributors
2
Issues

micro-optparse

This is an lightweight option parser, which is less than 80 lines short. It has strong validations and a short, clear and easy to use syntax. Feel free to copy all 80 lines (55 lines without validations / empty lines) into your script rather installing the gem.

Rubygem micro-optparse

Total Downloads
11847
Releases
10
Current Version
1.2.0
Released
2013-12-29 00:00:00 UTC
First Release
2011-02-25 23:00:00 UTC
Depends on following gems
Depending Gems
10

Github florianpilz/micro-optparse

Watchers
27
Forks
7
Development activity
Less active
Last commit
2013-12-29 15:13:38 UTC
Top contributors
Contributors
2
Issues

config_parser

Parse command-line options into a configuration hash

Rubygem config_parser

Total Downloads
14520
Releases
10
Current Version
0.5.5
Released
2011-07-18 06:00:00 UTC
First Release
2010-07-25 06:00:00 UTC
Depends on following gems
Depending Gems
2

OptionParser

A flexible command line option parser.

Rubygem OptionParser

Total Downloads
12506
Releases
2
Current Version
0.5.1
Released
2005-06-17 04:00:00 UTC
First Release
2005-06-16 04:00:00 UTC
Depends on following gems
Depending Gems
16

getoptions

Yet another command line option parser in Ruby, based on Perl's Getopt::Long module.

Rubygem getoptions

Total Downloads
8046
Releases
3
Current Version
0.3
Released
2009-04-20 07:00:00 UTC
First Release
2007-11-30 08:00:00 UTC
Depends on following gems
Depending Gems
6

arg0

It's just here to handle arguments provided to Application. Mainly optional via switches. Currently handles plain-text Console arguments.

Rubygem arg0

Total Downloads
2180
Releases
3
Current Version
0.0.3
Released
2013-03-26 00:00:00 UTC
First Release
2013-01-27 00:00:00 UTC
Depends on following gems
Depending Gems
3

Github abhishekkr/arg0

Watchers
1
Forks
0
Development activity
Inactive
Last commit
2013-03-26 19:35:30 UTC
First commit
Top contributors
Contributors
1
Issues
×

In order to continue, you must be signed in using your Github account.

If you're signing in using this account for the first time Github will ask for your permission to give access to your public user data to the Ruby Toolbox.

Although the Github Authorization page does not mention it, the request includes read-only access to your verified email address (user:email OAuth scope). This is neccessary so there's a way to notify you about comments, information about your accepted project edits and the like. You can review your notification settings on your account page once you're signed in.