Skip to content
InterPlanetary Linked Data
Branch: master
Clone or download

Latest commit

mikeal Merge pull request #77 from terichadbourne/patch-1
Link to ProtoSchool tutorials on IPFS DAG API
Latest commit b8b62fa Jul 16, 2019

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
img overhaul the README (#32) May 12, 2018
logo add logo and link to ipld.io Jul 17, 2017
LICENSE Change license from CC-BY-SA 3.0 to CC-BY 3.0 Jan 2, 2018
README.md Link to ProtoSchool tutorials on IPFS DAG API Jul 15, 2019
contributing.md Copied and edited multiformats contributing.md Oct 19, 2016

README.md

IPLD

Welcome to the Internet of Data-Structures

IPLD is a set of standards and implementations for creating decentralized data-structures that are universally addressable and linkable. These structures will allow us to do for data what URLs and links did for HTML web pages.

Enter IPLD

Watch the Merkle Forest Talk

Docs

Examples and Tutorials

Tools

Implementations

Package JavaScript Go Java
CID ipld/js-cid ipfs/go-cid ipld/java-cid
IPLD Node interface ipld/interface-ipld-format ipfs/go-ipld-format
IPLD Resolver ipld/js-ipld-resolver wip: ipfs/go-ipld-format#8
CBOR (default) ipld/js-ipld-dag-cbor ipfs/go-ipld-cbor ipld/java-ipld-cbor
Merkledag/Protobuf (legacy) ipld/js-ipld-dag-pb wip: ipfs/go-ipld-format#8
Raw ipld/js-ipld-raw wip: ipfs/go-ipld-format#8
Unixfs v2 (planning: ipfs/unixfs-v2)
Git ipld/js-ipld-git ipfs/go-ipld-git
Bitcoin ipfs/go-ipld-btc
Zcash ipfs/go-ipld-zcash
Ethereum ipld/js-ipld-ethereum ipfs/go-ipld-eth
Bencode ipld/js-ipld-bencode
Torrent info ipld/js-ipld-torrent-info
Torrent file ipld/js-ipld-torrent-file
IPLD Selectors (experimental) ipld/js-ipld-selector

New implementations

Are you working on your own implementation in another language? Open an issue in this repository to discuss it with others, find help, and coordinate efforts. Eventually, we can move it to the organization if you like, add it above, and mention it on the website.

Glossary

There are a variety of systems that use merkle-tree / content-addressing / hash-link / hash-chain inspired datastructures: e.g. Git, BitTorrent, IPFS, Tahoe-LAFS, SFS).

IPLD defines:

  • merkle-links: the core unit of a merkle-graph
  • merkle-dag: any graphs whose edges are merkle-links.
  • merkle-paths: unix-style paths for traversing merkle-dags with named merkle-links
  • IPLD Data Model: a flexible, JSON-inspired, self-describing structured data model for representing merkle-dags.
  • IPLD Serialized Formats: a set of formats in which IPLD objects can be represented, for example JSON, CBOR, CSON, YAML, Protobuf, XML, RDF, etc.

Contribute

Please contribute! Look at the issues!

Check out our contributing document for more information on how we work, and about contributing in general. Please be aware that all interactions related to IPLD are subject to the IPFS Code of Conduct.

Small note: If editing the README, please conform to the standard-readme specification.

License

This repository is mainly documents. All of these are licensed under a CC-BY 3.0 Unported License, © 2016 Protocol Labs Inc.

You can’t perform that action at this time.