# simple-cmd-args
[](https://hackage.haskell.org/package/simple-cmd-args)
[](LICENSE)
[](http://stackage.org/lts/package/simple-cmd-args)
[](http://stackage.org/nightly/package/simple-cmd-args)
[](https://travis-ci.org/juhp/simple-cmd-args)
A thin layer over optparse-applicative that avoids type plumbing for
commands by using `Parser (IO ())`. It also supports with subcommands.
## Usage
```haskell
import SimpleCmdArgs
import Control.Applicative (some)
import SimpleCmd (cmd_)
main =
simpleCmdArgs Nothing "my example tool" "Longer description..." $
subcommands
[ Subcommand "echo" (putStrLn <$> strArg "NAME") "Print name"
, Subcommand "ls" (cmd_ "ls" <$> some (strArg "FILE...")) "Touch FILE"
]
```
See more [examples](https://github.com/juhp/simple-cmd-args/tree/master/examples).