/ceramic

Home of the Ceramic Protocol

MIT LicenseMIT

ceramic banner

Ceramic: A decentralized network for mutable information

MIT license Twitter

Ceramic is a public, decentralized, censorship-resistant network for managing mutable information on the open internet without databases or servers. In Ceramic all content is stored in smart documents, which are append-only IPFS logs where each commit is signed by a decentralized identifier (DID) for verifiability and then subsequently anchored in a blockchain for consensus. Because Ceramic is built on a completely peer-to-peer network, all documents are openly discoverable and can be referenced by other documents or queried by any other participant on the network. For more information, see the Ceramic website, the Ceramic documentation, or try the demo app.

Project status: Clay testnet is now live. 🚀
Clay is a decentralized public network ready for experimental application development and testing. It anchors documents on the Ethereum Ropsten and Rinkeby testnets. It is the last major milestone before Fire mainnet, which is under development and will launch in late Q1 or early Q2 2021. Documents published on Clay will not be portable to Fire. Read the full announcement here.

Smart documents

Smart documents are the most powerful way to manage information on the open web.

  • Mutable documents: Store information in collections of mutable documents like your favorite NoSQL document database.
  • Immutable identifiers: Every document gets a globally unique persistent identifier, called a DocID. This DocID will never change regardless of how many updates are made to the document.
  • Verifiable signatures: Every update to a document must be signed by the DID of its owner, providing verifiability to its content.
  • Schema-enforced content: Documents can have schemas which will be enforced by the protocol. This allows for data integrity and simple cross-platform interoperability.
  • Strict versioning: Every update made to a document is anchored in a blockchain, so its commits follow a strict order. This allows the protocol to guarantee the state of a document at every commit and allows its content to be auditable and trusted at all times.
  • Programmable logic: Define custom rules for state transitions to enforce who, how, and when your document is updated without centralized servers. Rules can react to direct events such as a signature from the owner, or indirect events such as an update in another document.
  • Configurable persistence: Nodes can back up documents to any centralized or decentralized data storage platform.

Getting started

Here are a few useful links to help you get started with the Ceramic network.

Development

Tools

Ceramic Studio is a community-run Github organization that contains a set of useful tools to use when building with Ceramic. Notably it contains IDX, a decentralized identity protocol that provides a unified, user-centric alternative to app-specific user tables. IDX allows users to build up a single index of all of their data while enabling developers to break down silos and freely discover and share a users' data between applications. IDX uses Ceramic to store protocol data, but it can be used by applications that store data in any type of datastore, including Ceramic documents.

Community

  • Questions, support, and discussions: Join the Ceramic Discord
  • Bugs and feature requests: Create an issue on the appropriate Github repository
  • Attend community calls and core devs calls: Add the calendar

Content

Contributing

We are happy to accept small and large contributions, feel free to submit a pull request.

License

Ceramic is fully open source and dual-licensed under MIT and Apache 2.