yaml: Support for parsing and rendering YAML documents.

[ bsd3, data, library ] [ Propose Tags ]

Please see the README.md file.

[Skip to Readme]


Automatic Flags

don't install the yaml2json or json2yaml executables


don't build the examples


Use the system-wide libyaml instead of the bundled copy


Don't enable unicode output. Instead, unicode characters will be escaped.


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.0.0, 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.2.0, 0.2.1, 0.3.0, 0.4.0, 0.4.1,,, 0.5.0,, 0.5.1,,, 0.5.2, 0.6.0, 0.6.1, 0.7.0,,,,, 0.8.0,,, 0.8.1,,, 0.8.2,,,,, 0.8.3, 0.8.4,, 0.8.5,,,,, 0.8.6,,, 0.8.7,,, 0.8.8,,,,, 0.8.9,,,,, 0.8.10,, 0.8.11, 0.8.12, 0.8.13, 0.8.14,,,, 0.8.16, 0.8.17,,, 0.8.18,,,,,,,,, 0.8.20, 0.8.21,,, 0.8.22,, 0.8.23,,, 0.8.24, 0.8.25,, 0.8.26, 0.8.27, 0.8.28, 0.8.29, 0.8.30, 0.8.31,, 0.8.32, 0.9.0, 0.10.0, 0.10.1,,,,,,,,,,,,,,,,,,,,
Change log ChangeLog.md
Dependencies aeson (>=0.7 && <2), attoparsec (>=, base (>=4 && <4.11), bytestring (>=, conduit (>=1.1.0 && <1.3), containers, directory, enclosed-exceptions, filepath, raw-strings-qq, resourcet (>=0.3 && <1.2), scientific, semigroups, template-haskell (>=, text, transformers (>=0.1), unordered-containers, vector, yaml [details]
License BSD-3-Clause
Author Michael Snoyman <michael@snoyman.com>, Anton Ageev <antage@gmail.com>,Kirill Simonov
Maintainer Michael Snoyman <michael@snoyman.com>
Revised Revision 2 made by sjakobi at 2021-10-10T22:52:33Z
Category Web
Home page http://github.com/snoyberg/yaml/
Source repo head: git clone https://github.com/snoyberg/yaml
Uploaded by MichaelSnoyman at 2016-10-19T16:31:19Z
Distributions Arch:, Debian:, Fedora:, FreeBSD:0.8.13, LTSHaskell:, NixOS:, Stackage:, openSUSE:
Reverse Dependencies 248 direct, 486 indirect [details]
Executables examples, json2yaml, yaml2json
Downloads 306317 total (659 in the last 30 days)
Rating 2.25 (votes: 5) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for yaml-0.8.20

[back to package description]


Provides support for parsing and emitting Yaml documents.

This package includes the full libyaml C library version 0.1.7 by Kirill Simonov in the package so you don't need to worry about any non-Haskell dependencies.

The package is broken down into two primary modules. Data.Yaml provides a high-level interface based around the JSON datatypes provided by the aeson package. Text.Libyaml provides a lower-level, streaming interface. For most users, Data.Yaml is recommended.


Usage examples can be found in the Data.Yaml documentation or in the examples directory.

Additional modules

  • Data.Yaml.Include supports adding !include directives to your YAML files.
  • Data.Yaml.Builder and Data.Yaml.Parser allow more fine-grained control of parsing an rendering, as opposed to just using the aeson typeclass and datatype system for parsing and rendering.
  • Data.Yaml.Aeson is currently a re-export of Data.Yaml to explicitly choose to use the aeson-compatible API.