packages feed

ipldm-1.0.0.0: README.md

ipldm [![builds.sr.ht status](
https://builds.sr.ht/~z0/ipldm/commits/main/ipfshs-ci.yml.svg)](
https://builds.sr.ht/~z0/ipldm/commits/main/ipfshs-ci.yml?)
----------------------------------------------------------------

The `ipldm` library provides methods for working with the [IPLD data model](
https://ipld.io/docs/data-model/) (DM) in Haskell. Disclaimer that this project
is still in alpha, and not ready to be used in a production system.

Currently, the project has the following functionalities:

- Represeting the DM with [nodes](https://ipld.io/docs/data-model/node/) of
some [kind](https://ipld.io/docs/data-model/kinds/) including [CIDs](
https://github.com/multiformats/cid) provided by the [`mfmts`](
https://hackage.haskell.org/package/mfmts) package.
- A type-class interface for implementing generic encoders and decoders for the
DM using [Alternatives](
https://hackage.haskell.org/package/base/docs/Control-Applicative.html#t:Applicative).
- Implements codec for [DAG-CBOR](https://ipld.io/docs/codecs/known/dag-cbor/)
with encoder/decoder instances that work with [CBOR](https://cbor.io/) encoded
bytestrings and provides exeptions for formatting errors and IPLD's extra
constraints.

Development
-----------

Unit tests are provided on the main [ipfshs repo](https://git.sr.ht/~z0/ipfshs),
and bugs can be reported on [ipfshs ticket tracker](
https://todo.sr.ht/~z0/ipfshs).

Licensing
---------

The `ipldm` project and its modules are free software and licensed under the
[AGPLv3](https://www.gnu.org/licenses/agpl-3.0.en.html) license. See
[LICENSE.txt](LICENSE.txt).

Copyright © 2026 Zoey McBride | [zoeymcbride@mailbox.org](
mailto:zoeymcbride@mailbox.org)