DSL for generating API boilerplate and docs http://github.com/iconnect/api-tools

Latest on Hackage:

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

api-tools provides a compact DSL for describing an API. It uses Template Haskell to generate the corresponding data types and assorted tools for working with it, including Aeson and QuickCheck instances for converting between JSON and the generated types and writing unit tests.


-*-change-log-*- Adam Gundry <adam@well-typed.com> October 2017
* Silently truncate floating point numbers to integers Mikolaj Konarski <mikolaj@well-typed.com> August 2017
* Update to match the published cborg 0.1 API Adam Gundry <adam@well-typed.com> April 2017
* Add support for GHC 8.0 and drop 7.6
* Tweak generated Markdown headers Adam Gundry <adam@well-typed.com> January 2016
* Implement more efficient data migrations
* Change FieldName and TypeName to use Text instead of String
* Adapt to changes in binary-serialise-cbor Adam Gundry <adam@well-typed.com> October 2015
* Support building on GHC 7.10.2 and relax dependencies

0.6 Adam Gundry <adam@well-typed.com> August 2015
* Add tool to generate CBOR Serialise instances, and related code

0.5.2 Adam Gundry <adam@well-typed.com> December 2014
* Fix bug in DeepSeq tool: records not reduced to normal form
* Add instance for NFData Binary

0.5.1 Adam Gundry <adam@well-typed.com> November 2014
* Tool to generate NFData instances (added dependency on deepseq)
* Expose internal module with TH utility functions
* Documentation tweaks

0.5 Adam Gundry <adam@well-typed.com> October 2014
* Tool to generate Aeson FromJSON instances, as well as FromJSONWithErrs
* Add more TypeKind alternatives for custom migrations
* Pretty-printing and error message fixes
* Report correct source locations in quasiquote parsers
* Extend JSON parser to optionally treat newtype filter violations as warnings
* Optionally generate smart constructors for filtered newtypes Adam Gundry <adam@well-typed.com> July 2014
* Widen dependency compatibility to support GHC 7.8.3

0.4 Adam Gundry <adam@well-typed.com> May 2014
* Support read-only fields and default values in JSON parser
* Better error messages when parsing unions
* More accurate version bounds in Cabal file
* Support custom migrations on non-record types
* Add instance IsString APIType

0.3 Adam Gundry <adam@well-typed.com> Apr 2014
* Add tool to perform generic traversals
* Move API normal forms and dependency analysis to a new module

0.2 Chris Dornan <chrisd@irisconnect.co.uk> Feb 2014
* First public release
comments powered byDisqus