Ceramic is a decentralized, open source platform for creating, hosting, and sharing streams of data.
On networks like IPFS, every piece of content gets a unique, deterministic cryptographic identifier through a concept known as content addressing. This is great because it enables trustless peer-to-peer content sharing, but creates overhead for content that needs to change over time—every content modification results in an entirely new content identifier (CID).
Ceramic is a protocol built on top of IPFS which makes it easy to create, manage, and share mutable Streams of content addressed data.
The Geo Web uses Ceramic to manage mutable content linking for its digital land parcels. Ceramic allows the Geo Web to utilize IPFS's p2p content network, but greatly simplifies the user experience for publishers. It maintains trustlessness, but does not require expensive blockchain transactions for each update.
Upon an initial claim of a Geo Web land parcel, a root Ceramic StreamID is created deterministically based on a combination of the licensor's DID and the parcel ID. A StreamID is immutable (it doesn't change with changes to its content) and is exclusively controlled by the land parcel's claimant.
Arbitrary digital content can be linked and resolved within a Stream using different StreamTypes, schemas, and records.
The Cadastre currently manages Stream creation and modification automatically for publishers for a limited set of use cases. Currently, users can name their parcel and associate a URI via the ParcelContentRoot schema and add 3D and AR content via the MediaGallery schema.
The ParcelContentRoot Ceramic schema seen on the Tiles explorer
More content linking experiences (including point-specific anchoring) will be added over time and maintained in a public list. The community will always be empowered to create and share their own schemas as well. Proper coordination with browsers (i.e., a browser must know how to interpret the content) is the only limit to content linking on the Geo Web with Ceramic.
Check out the developer docs for additional details about Ceramic.
Copy link