miniBill/elm-codec/1.0.0

NOTE: the latest version is 2.3.1

elm-codecs

Build Status

This package allows you to build pairs of JSON encoders (a -> Value) and decoders (Decoder a), collectively called a Codec a.

See an end-to-end example in the examples/ folder.

Design Goals

The design goal is to be as type safe as possible while keeping a nice API. Using this package will greatly reduce the risk of unmatched encoders and decoders.

Example

codec : Codec (List Int)
codec =
    Codec.list Codec.int

encode : List Int -> Json.Encode.Value
encode =
    Codec.encoder codec

decoder : Json.Decoder.Decoder (List Int)
decoder =
    Codec.decoder codec

Learning Resources

Ask for help on the Elm Slack.

You can also have a look at the FAQ.md file.