User friendly command line apps with even less suffering
I love to write command line applications (eg. App-iTan, Business-UPS-Tracking, Game-Lacuna-Task, Mac-iPhoto-Exif and many more not publicly available). However most of the CPAN tools I generally use to build these applications either are not as user-friendly as I would like them to be, or are not flexible enough.
I decided to change that and wrote MooseX-App.
It handles commands with multiple subcommands, generates usage text, error messages on wrong user-input, validates options, and lets you write your program as easy-to-test and reusable classes. Just as App-Cmd (or MooseX-App-Cmd respectively). However compared to these options it ...
- is more flexible
- supports plugins that can overdrive almost all of its behaviour
- does not impose a certain application structure on you (thus making code reusage and testing easier)
- does not pollute your command classes with many methods since most of its logic is implemented via meta classes
- and is quite user friendly by providing useful input hints, better error messages as well as optional colorful output and bash completion
So let me give you a short example:
Hope you like it.