mangrove-cli: Build CLI argument parsers using Applicative.

[ bsd3, cli, library, options, parsing ] [ Propose Tags ] [ Report a vulnerability ]

Please see the README on GitHub at https://github.com/quytelda/mangrove#readme


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.2.0.0, 0.3.0.0
Change log CHANGELOG.md
Dependencies base (>=4.7 && <5), containers (>=0.6.4 && <0.9), mtl (>=2.2.2 && <2.4), text (>=1.2.5 && <2.2), transformers (>=0.5.6 && <0.7) [details]
License BSD-3-Clause
Copyright Copyright 2026 Quytelda Kahja
Author Quytelda Kahja
Maintainer quytelda@tamalin.org
Uploaded by quytelda at 2026-08-28T00:52:44Z
Category CLI, Options, Parsing
Home page https://github.com/quytelda/mangrove#readme
Bug tracker https://github.com/quytelda/mangrove/issues
Source repo head: git clone https://github.com/quytelda/mangrove
Distributions
Downloads 15 total (15 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2026-08-28 [all 1 reports]

Readme for mangrove-cli-0.3.0.0

[back to package description]

Mangrove (mangrove-cli)

Hackage Unit Tests

Mangrove is a library for building command line argument parsers using Haskell's Applicative interface. It provides parsers for UNIX-style command line syntax, including positional parameters, named options, and commands, as well as complex subparameters and suboptions (e.g. --mount src=/webroot,dst=/var/www,rw). It is also extensible, so you can define alternative command line syntaxes.

Documentation

The API documentation is available on Hackage: https://hackage.haskell.org/package/mangrove-cli

There is a tutorial to help with getting started: https://github.com/quytelda/mangrove/wiki/Tutorial

Commands are covered in a separate tutorial: https://github.com/quytelda/mangrove/wiki/Commands

Obtaining

Mangrove is available on Hackage as mangrove-cli: https://hackage.haskell.org/package/mangrove-cli

NOTE: This project is not related to the mangrove package on Hackage. Make sure to use the package name mangrove-cli.

The source code for Mangrove is hosted on GitHub: https://github.com/quytelda/mangrove

Building

This project uses stack as its primary build system (though building with cabal should also work). As usual, you can build the library by running stack build and you can install it with stack install. Use stack haddock to build the API documentation.

Test Suite

Mangrove has a test suite using HSpec. Run stack test to build and run the tests. The main branch should always pass all tests, so if something fails, please make an issue!

Project Roadmap

This project is currently under active development. Goals currently on the horizon include:

  • Stabilize the client-facing API
  • Simplify the code structure
  • Improve test suite coverage
  • Profiling & optimization

Once these are addressed, a 1.0.0 release will be appropriate.