picocli logo

picocli

Easily build command line apps with ANSI colors and autocomplete
11
12
+ 1
8

What is picocli?

Library and framework for easily building professional command line applications on the JVM (Java, Groovy, Kotlin, Scala, etc). Usage help with ANSI colors. Autocomplete. Nested subcommands. Annotations and programmatic API. Easy to include as source to avoid adding dependencies. More than just a command line parser.
picocli is a tool in the Shell Utilities category of a tech stack.
picocli is an open source tool with 5K GitHub stars and 424 GitHub forks. Here’s a link to picocli's open source repository on GitHub

Who uses picocli?

Companies

Developers
10 developers on StackShare have stated that they use picocli.

picocli Integrations

Pros of picocli
1
Best Java framework for Java CLI that I know
1
Easy to Use
1
Flexible
1
Actively maintained
1
Well documented
1
ANSI colors in usage help
1
Command line auto-completion
1
GraalVM native image integration

picocli's Features

  • Java 5-13ea
  • annotation API
  • programmatic API
  • GraalVM integration - for extremely fast startup
  • nested subcommands to any depth
  • strongly typed option parameters
  • strongly typed positional parameters
  • many, many built-in types
  • easily add custom type converters
  • interactive password options
  • supports Maps for options and positional parameters (like -Dkey=value Java system properties)
  • no boilerplate code, just implement Runnable or Callable
  • supports both mixins and subclassing for reuse
  • built-in support for standard --help and --version options (zero code)
  • built-in help subcommand
  • uses STDERR for error messages, STDOUT for requested help by default
  • allows any option prefix
  • POSIX-style clustered short options
  • highly configurable parser
  • parser tracing to facilitate troubleshooting
  • quality documentation
  • built-in Groovy script support
  • easily integrates with Dependency Injection containers
  • easily integrates with JLine 2 and JLine 3 to create interactive shell applications

picocli Alternatives & Comparisons

What are some alternatives to picocli?
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
HTML5
HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web. As of October 2014 this is the final and complete fifth revision of the HTML standard of the World Wide Web Consortium (W3C). The previous version, HTML 4, was standardised in 1997.
PHP
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
See all alternatives

picocli's Followers
12 developers follow picocli to keep up with related blogs and decisions.