multiformats

The main repository for discussing multiformats.

  • 所有者: multiformats/multiformats
  • 平台:
  • 许可证:
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

multiformats




The main repository for discussing multiformats

Currently, we have the following formats. More formats are being discussed and worked on., Repo, Captain, Status, IETF, ------, ---------, --------, ------, multiaddr, @lgierth, stable, WIP, multibase, @jbenet, stable, W3C DVCG, multicodec, @jbenet, stable, TODO, multihash, @jbenet, stable, W3C DVCG, multistream, @diasdavid, stable, TODO, multigram, WIP, TODO, multikey, WIP, TODO, See the project directory, below, for implementations and other related repositories.


Table of Contents

Background

Every choice in computing has a tradeoff. This includes formats, algorithms, encodings, and so on. And even with a great deal of planning, decisions may lead to breaking changes down the road, or to solutions which are no longer optimal. Allowing systems to evolve and grow is important.

Multiformats is a collection of protocols which aim to future-proof systems, today. They do this mainly by allowing data to be self-describable. This allows interoperability, protocol agility, and helps us avoid lock in. Currently, our protocols (both works in progress and implemented) cover the following areas:

The self-describing aspects of the protocols have a few stipulations:

  • they must be in the value (not passed in out of band, in function calls, implicit choices, or documentation);
  • they must be compact and have a binary-packed representation (as opposed to a sparser encoding) or they will hinder performance;
  • they must have a human readable representation.

Several of the multiformats are stable, and we're working on the others. We are trying to prioritize their usage as soon as possible. What they offer -- protocol interoperability and future-proofing -- would have real-world consequences.

Towards that end, we are encouraging implementations of these protocols; if you know of any, please link them here (or add them to the organization!).

A note on the word Multiformats

Multiformats is the name for the organization, but it can also be used to refer to protocols; for instance, in the sentence "Use one of the multiformats". Formats is interchangeable with protocols, here. We try to capitalize Multiformats when it refers to the organization, on GitHub.

Project Directory

Below, a list of all of the projects in the Multiformats organization is listed.

Captains are the active leads for each project. Their responsibilities are to make sure that issues and pull requests are attended to in a timely manner, and general upkeep. If you have questions about a repository, or need feedback, please contact them as appropriate.

Implementations

As well as specifications, we also have some implementations in the organization

Multiaddr Implementations, Repo, Captain, ------, -------------------, cs-multiaddress, @tabrath, go-multiaddr, @whyrusleeping, go-multiaddr-net, @whyrusleeping, go-multiaddr-dns, @lgierth, java-multiaddr, @ianopolous, js-multiaddr, @diasdavid, rust-multiaddr, @dignifiedquire, SwiftMultiaddr, @NeoTeo, py-multiaddr, #### Multihash Implementations, Repo, Captain, Note, ------, ---------, ------, c-multihash, @Kubuxu, Only parsing and encoding, and not hashing., c-multihashing, @Kubuxu, cs-multihash, @tabrath, clj-multihash, @greglook, ex_multihash, @zabirauf, go-multihash, @Kubuxu, haskell-multihash, @LukeHoersten, java-multihash, @ianopolous, hash-overlay (Java 9), @jamespedwards42, js-multihash, @diasdavid, js-multihashing-async, @dignifiedquire, js-multihashing, @diasdavid, MultiHash.Net (fork), @MCGPPeters, php-multihash, @Fil, ruby-multihash, @kyledrake, rust-multihash, @dignifiedquire, scala-multihash, @parkan, SwiftMultihash, @NeoTeo, #### Multicodec Implementations, Repo, Captain, Note, ------, ---------, ------, clj-multicodec, @greglook, go-multicodec-packed, @whyrusleeping, go-multicodec, @jbenet, js-multicodec, @diasdavid, #### Other Implementations, Repo, Captain, Note, ------, ---------, ------, cs-multibase, @tabrath, go-multibase, @whyrusleeping, go-multigram, @lgierth, go-multistream, @whyrusleeping, java-multibase, @ianopolous, js-multibase, @diasdavid, js-multistream-select, @diasdavid, ### Other Repositories, Repo, Captain, Note, ------, ---------, ------, clj-varint, @ekroon, ma-pipe, @jbenet, multiformats, @RichardLitt, This repository, specs, @nicola, Specification work regarding multihash, multiaddr, and others. WIP., unsigned-varint, @jbenet, unsigned varint in use in multiformat specs. WIP., clj-varint, @ekroon, Simple wrapper around Bazel VarInt code., website, @victorbjelkholm, The multiformats website, ## Maintainers

Contribute

Please contribute! Dive into 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 multiformats are subject to the IPFS Code of Conduct.

If you're interested in proposing a new format (in addition to multihash, multistream, and so on), open an issue in this repository, explaining the name of the format, what it is for, and why you think it should become one of the multiformats. Pointing to any existing implementations would also be great, if there are any. If you want to implement a multiformat in a new language, open an issue in the main repository for the relevant multiformat: for instance, if you want to write rust-multicodec, open an issue in the multiformats/multicodec repository. This will allow others to know that you're working on it, and potentially join in the effort.

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

License

This repository is only for documents. All of these are licensed under the CC-BY-SA 3.0 license © 2016 Protocol Labs Inc. Any code is under a MIT © 2016 Protocol Labs Inc.

主要指标

概览
名称与所有者multiformats/multiformats
主编程语言
编程语言 (语言数: 0)
平台
许可证
所有者活动
创建于2016-07-19 10:11:20
推送于2025-04-28 16:02:10
最后一次提交2025-04-28 18:02:07
发布数0
用户参与
星数569
关注者数55
派生数67
提交数61
已启用问题?
问题数41
打开的问题数18
拉请求数22
打开的拉请求数1
关闭的拉请求数4
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?