Processing command-line arguments in a type-safe and cross-platform manner is a task that appears to be seldom addressed by library writers. There are two aims for this project. The first is to have a simple to use API that processes command-line arguments safely and simply in a Qt fashion for a developer. The other is to provide to the users of the developer's application a command-line argument interface that is common to their OS, e.g. /? for Windows.

Stable Version 1.3.0

There are packages of the current stable version below, or checkout the latest release branch using Mercurial .


  • Simple API -- get an argument in just a few lines of code!
  • Support all base C++ types
  • Supports both short and long named arguments
  • Supports both case-sensitive and insensitive.
  • Specialised support for Boolean arguments and Boolean types.
  • Support for arguments with multiple values: e.g. -i 2 3 5
  • Native operating system option separator support
  • Simple variable assignment based on arguments
  • Retrieval of an argument fires a Qt signal
  • Automatically verifies all arguments passed in are supported by the developer's application.
  • Automatically supports requiring an argument is passed in by the user.
  • Automatically generates an help summary that can be viewed on both the standard out and as a signal.
  • Provides the actual argument counts supplied by the user, not the number of passed in strings.

Known Issues

  1. None.

Report Issues

If you have an issue, enhancement, or wish that you would like, submit your report and it will be addressed.

Foster Development

These projects are developed on a part-time basis. Donations help not just pay bills, like this website, but guide which projects are in more demand by users. You can cast your vote for this project, and get more attention for your loved project. There is not a minimum donation.

Downloads & Packages

Operating system specific packages and installers are available below. Select the download which most matches your computer and desired install wishes.

Operating System






You can track the current development version on the default branch by using Mercurial.