self(auto)- documenting encoders and decoders
Go to file
2021-11-01 19:06:42 +01:00
.github remove obsolete funding options 2021-10-30 12:05:05 +02:00
autodocodec deriving via example 2021-11-01 18:42:32 +01:00
autodocodec-aeson split off a autodocodec-aeson-schema package 2021-11-01 19:06:42 +01:00
autodocodec-aeson-schema split off a autodocodec-aeson-schema package 2021-11-01 19:06:42 +01:00
autodocodec-api-usage split off a autodocodec-aeson-schema package 2021-11-01 19:06:42 +01:00
autodocodec-yaml split off a autodocodec-aeson-schema package 2021-11-01 19:06:42 +01:00
nix split off a autodocodec-aeson-schema package 2021-11-01 19:06:42 +01:00
.gitignore trying a thing 2021-10-20 17:59:50 +02:00
.hlint.yaml a finite recursive schema 2021-10-29 19:56:07 +02:00
ci.nix build fewer versions on ci because the haddocks are quite stupid about it 2021-10-30 13:00:37 +02:00
default.nix Trying to set up CI 2021-10-24 19:21:59 +02:00
LICENSE trying a thing 2021-10-24 19:29:57 +02:00
README.md something that compiles 2021-11-01 14:26:27 +01:00
shell.nix test failure 2021-10-24 19:34:17 +02:00
stack.yaml split off a autodocodec-aeson-schema package 2021-11-01 19:06:42 +01:00

Autodocodec

Autodocodec is short for "self(auto)- documenting encoder and decoder".

In short: You write one (1) instance, of the 'Codec' type-class, for your type, and you get:

DISCLAIMER: This is a work in progress.

This is not ready for production, it is not in use in any of my own projects yet, I do not recommend using it yet.

  • Documentation is not complete.
  • Some pieces of the implementation

Goals:

  • Correct-by-construction encoding and decoding, without generating code.
  • Generate automatically-correct documentation from code.
  • Fun but not important: Be able to provide instances without depending on aeson and/or yaml.
  • Would be nice: support for recursive types.

TODO

Tests and guarantees