Skip to content

Commit

Permalink
introduction section updates
Browse files Browse the repository at this point in the history
  • Loading branch information
JustinaPetr committed Sep 2, 2024
1 parent 25f0228 commit 3d56422
Show file tree
Hide file tree
Showing 8 changed files with 99 additions and 66 deletions.
6 changes: 0 additions & 6 deletions docs/composedb/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,6 @@ ComposeDB officially entered `Beta` on February 28, 2023. What does this mean?
- We will continue to improve performance and add more features
- We are not yet guaranteeing a 100% stable, bug-free platform

If you want to provide feedback, request new features, or report insufficient performance, please [make a post on the Forum](https://forum.ceramic.network/c/graph/9), as we'd like to work with you.
Thank you for being a ComposeDB pioneer and understanding that great Web3 protocols take time to mature.




### [Get Started →](./getting-started)
Build a Hello World application and interact from the CLI.

Expand Down
26 changes: 11 additions & 15 deletions docs/introduction/composedb-overview.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
# ComposeDB
![Introduction](/img/intro-dataverse.png)

ComposeDB is a composable graph database built on [Ceramic](https://ceramic.network), designed for Web3 applications.
<p align="center">
<img src="/img/intro-dataverse.png" alt="Introduction" width="500"/>
</p>

### Use Cases
| Use Case | Examples |
|---|---|
|__Decentralized identity__| `user profiles` `credentials` `reputation systems` |
|__Web3 social__| `social graphs` `posts` `reactions` `comments` `messages` |
|__DAO tools__| `proposals` `projects` `tasks` `votes` `contribution graphs` |
|__Open information graphs__| `DeSci graphs` `knowledge graphs` `discourse graphs` |

### Why ComposeDB?

Expand All @@ -20,6 +15,14 @@ ComposeDB is a composable graph database built on [Ceramic](https://ceramic.netw
- Eliminate trust and guarantee data verifiability
- Scale your Web3 data infrastructure beyond L1 or L2 blockchains

### Use Cases
| Use Case | Examples |
|---|---|
|__Decentralized identity__| `user profiles` `credentials` `reputation systems` |
|__Web3 social__| `social graphs` `posts` `reactions` `comments` `messages` |
|__DAO tools__| `proposals` `projects` `tasks` `votes` `contribution graphs` |
|__Open information graphs__| `DeSci graphs` `knowledge graphs` `discourse graphs` |

### Project Status: `Beta`

ComposeDB officially entered `Beta` on February 28, 2023. What does this mean?
Expand All @@ -43,10 +46,3 @@ Test example queries to ComposeDB directly in your browser.

### [Development Guides →](../composedb/guides)
Learn about data modeling, application set up, and data interactions.
<!-- Server Config-->

### [Core concepts →](../composedb/core-concepts)
Dive deeper into the ComposeDB protocol and its components.

### [Community →](../ecosystem/community)
Connect with the ComposeDB developer community.
3 changes: 2 additions & 1 deletion docs/introduction/did-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@
Cermic comes with a suite of tools and APIs to interact with and manage decentralized identifiers (DIDs). DIDs require no central authority - users control their data and whom they share it with.

## DID Methods
We encourage using the did:pkh DID method which generates a persistent id from a wallet address’s public key hash. This enables one-click sign-on with your wallet to many apps on Ethereum, and soon on many other chains including Solana. We also support the Ceramic-created 3ID method which acts as an aggregator for multiple accounts and can handle multiple keys simulatneously.
`did:pkh` DID method generates a persistent id from a wallet address’s public key hash. This enables one-click sign-on with your wallet to many apps on Ethereum, and soon on many other chains including Solana. We also support the Ceramic-created 3ID method which acts as an aggregator for multiple accounts and can handle multiple keys simulatneously.

## DID Sessions

DID-Sessions is a library for providing a familiar, "web session"-like experience. Users no longer have to sign every single action they take within an app - during a timebound period of time they can authorize the app developer to act on their behalf. DID-Sessions outputs verifiable, serializable objects that store information about which DIDs authenticated them, what capabilities they are authorized with and for how long.

[Learn more](../dids/introduction.md) about Decentralized Indentifiers suppoerted by Ceramic.
7 changes: 6 additions & 1 deletion docs/introduction/orbisdb-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ OrbisDB is a simple and efficient gateway for storing and managing open data on

OrbisDB provides a developer-friendly SQL interface to explore and query data on Ceramic as well as a user interface and plugin store to save development time on crypto-specific features – from data migration and token gating mechanisms to automated blockchain interactions. It is built on Ceramic's new Data Feed API which makes it fully compatible with [ComposeDB](./composedb-overview).

OrbisDB comes with with a shared instance called [Orbis Studio](https://app.formo.so/hJ5VGyugmGigyVFyqdHJa), offering a simple experience to get started with building on Orbis and accessing plugins. [Get access to the Orbis Studio](https://app.formo.so/hJ5VGyugmGigyVFyqdHJa) (currently in Closed Beta) and start building!
<div align="center"><iframe width="660" height="415" src="https://www.youtube.com/embed/gxHphFzkV3k" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div>


OrbisDB comes with with a shared instance called [Orbis Studio](https://app.formo.so/hJ5VGyugmGigyVFyqdHJa), offering a simple experience to get started with building on Orbis and accessing plugins.

[Get access to the Orbis Studio](https://app.formo.so/hJ5VGyugmGigyVFyqdHJa) (currently in Closed Beta) and start building!


53 changes: 22 additions & 31 deletions docs/introduction/protocol-overview.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@

# Ceramic Protocol

Ceramic is a decentralized event streaming protocol that enables developers to build decentralized databases, distributed compute pipelines, and authenticated data feeds, etc. Ceramic nodes can subscribe to subsets of streams forgoing the need of a global network state. This makes Ceramic an eventually consistent system (as opposed to strongly consistent like L1 blockchains), enabling web scale applications to be built reliably.
Ceramic's event streaming protocol is a highly-scalable decentralized data infrastructure used for building all kinds of interoperable Web3 services and protocols, such as decentralized databases, distributed compute pipelines, and authenticated data feeds, etc.

Ceramic nodes can subscribe to subsets of streams forgoing the need of a global network state. This makes Ceramic an eventually consistent system (as opposed to strongly consistent like L1 blockchains), enabling web scale applications to be built reliably.

<p align="center">
<img src="/img/ceramic-overview.png" alt="Introduction" width="500"/>
</p>

## Core Components

---

The Ceramic protocol consists of the following components:
The Ceramic protocol consists of the following core components if playing an important role in the functionality and the decentralization of the network:

- [**Streams →**](../protocol/js-ceramic/streams/streams-index)
- [**Accounts →**](../protocol/js-ceramic/accounts/accounts-index.md)
Expand All @@ -17,37 +22,23 @@ The Ceramic protocol consists of the following components:
- [**Ceramic Nodes →**](../protocol/js-ceramic/nodes/overview.md)


## Specification Status
## Ceramic Nodes

---
Developers, building on Ceramic have to run a Ceramic node to provide data storage, compute, and bandwidth for their Ceramic application. Today there are no tokenized incentives for running a Ceramic node, but by running a node you can ensure the data for your app remains available while helping contribute to the network's decentralization. There are a few different ways of how you can run a Ceramic node:

- [**Run Ceramic in the cloud**](../protocol/js-ceramic/guides/ceramic-nodes/running-cloud)

- [**Run Ceramic locally**](../protocol/js-ceramic/guides/ceramic-nodes/running-locally)

- [**Use one of the managed node solutions built by the Ceramic community**](https://hirenodes.io/)


## Database products built on ceramic
---
Ceramic enables a number of database products that process and index data in various ways. Today, developers can already interact with the following existing solutions and build new ones:

| Section | State |
| --- | --- |
| [1. Streams](../protocol/js-ceramic/streams/streams-index) | **[<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>](../protocol/js-ceramic/streams/streams-index)** |
| [1.1. Event Log](../protocol/js-ceramic/streams/event-log) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/streams/event-log)** |
| [1.2. URI Scheme](../protocol/js-ceramic/streams/uri-scheme) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/streams/uri-scheme)** |
| [1.3. Consensus](../protocol/js-ceramic/streams/consensus) | **[<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>](../protocol/js-ceramic/streams/consensus)** |
| [1.4. Lifecycle](../protocol/js-ceramic/streams/lifecycle) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/streams/lifecycle)** |
| [2. Accounts](../protocol/js-ceramic/accounts/accounts-index) | **[<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>](../protocol/js-ceramic/accounts/accounts-index)** |
| [2.1. Decentralized Identifiers](../protocol/js-ceramic/accounts/decentralized-identifiers) | **[<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>](../protocol/js-ceramic/accounts/decentralized-identifiers)** |
| [2.2. Authorizations](../protocol/js-ceramic/accounts/authorizations) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/accounts/authorizations)** |
| [2.3. Object-Capabilities](../protocol/js-ceramic/accounts/object-capabilities) | **[<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>](../protocol/js-ceramic/accounts/object-capabilities)** |
| [3. Networking](../protocol/js-ceramic/networking/networking-index) | **[<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>](../protocol/js-ceramic/networking/networking-index)** |
| [3.1. Tip Gossip](../protocol/js-ceramic/networking/tip-gossip) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/networking/tip-gossip)** |
| [3.2. Tip Queries](../protocol/js-ceramic/networking/tip-queries) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/networking/tip-queries)** |
| [3.3. Event Fetching](../protocol/js-ceramic/networking/event-fetching) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/networking/event-fetching)** |
| [3.4. Network Identifiers](../protocol/js-ceramic/networking/networks) | **[<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>](../protocol/js-ceramic/networking/networks)** |
| [4. API](../protocol/js-ceramic/api) | **[<span styles="color:rgba(212, 76, 71, 1)">Missing</span>](../protocol/js-ceramic/api)** |
| [5. Nodes](../protocol/js-ceramic/nodes/overview) | **[<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>](../protocol/js-ceramic/nodes/overview)** |

#### **Legend**

| Spec state | Label |
| --- | --- |
| Unlikely to change in the foreseeable future. | **<span styles="color:rgba(51, 126, 169, 1)">Stable</span>** |
| All content is correct. Important details are covered. | **<span styles="color:rgba(68, 131, 97, 1)">Reliable</span>** |
| All content is correct. Details are being worked on. | **<span styles="color:rgba(203, 145, 47, 1)">Draft/WIP</span>** |
| Do not follow. Important things have changed. | **<span styles="color:rgba(217, 115, 13, 1)">Incorrect</span>** |
| No work has been done yet. | **<span styles="color:rgba(212, 76, 71, 1)">Missing</span>** |
- [**OrbisDB**](./orbisdb-overview.md) - a database built on Ceramic that allows you to easily interact with the data stored on Ceramic using a simple and familiar SQL-based interface.

- [**ComposeDB**](./composedb-overview.md) - a composable grapqh database built on Ceramic.

28 changes: 20 additions & 8 deletions docs/introduction/why-ceramic.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,21 @@

---

Ceramic is a distributed event sourcing and storage system that applications can use to store high volume user and application data, manage documents and content, and construct activity logs and databases.
It adds trust to data at scale, offering faster, cheaper and higher throughput than a blockchain.

Ceramic's decentralized data network provides Web3 developers with a collection of features that make it possible to build scalable Web3 applications with composable data that can be reused and shared across applications.



## What Ceramic is for?

Ceramic enables organizations facing these common data challenges:
- Publish credentials, logs or other data without painful gas fees
- Manage rich user and behavioral data without compromising user privacy
- Store high-throughput machine data from sensors, agents, and network nodes
- Build new verifiable data products and pipelines on a battle-tested event sourcing system

## Overview

Ceramic compared to other popular Web3 infrastructure solutions.
Expand All @@ -22,18 +35,20 @@ Ceramic compared to other popular Web3 infrastructure solutions.
## Key Benefits

---
### Speed and Scalability
Ceramic's data network infrastructure is highly-scalable and can service use cases where high amounts of data throughput is needed. On Ceramic, every data object maintains its own state and nodes independently process stream transactions, allowing unbounded parallelization. This enables Ceramic to operate at worldwide data scale, which is orders of magnitude greater than the scale needed for decentralized finance.


### Mutable data storage
### Mutable data storage
Ceramic provides developers with a set of standard, open APIs for storing, updating, and retrieving data from the network. This helps to break down data silos, enabling all data to be openly accessible. Additionally, all data mutations on Ceramic are cryptographically verifiable and can provide auditability throughout all historical versions of a piece of data that has changed over time.

### Data Composability

Data on Ceramic is structured and stored in data models, which can be easily reused by different applications to share
data between them. Data models are created by developers in the community, and the ecosystem of data models is constantly expanding. Data models typically represent a single, logical application feature such as a user profile, a social graph, or a blog and developers typically combine multiple data models to create their application.
Data on Ceramic is structured and stored in data models, which can be easily reused by different applications to share data between them. Data models are created by developers in the community, and the ecosystem of data models is constantly expanding. Data models typically represent a single, logical application feature such as a user profile, a social graph, or a blog and developers typically combine multiple data models to create their application.

### Developer Experience
### Collaborative Developer Experience

Building composable applications with Web3 data on Ceramic is simple. Install Ceramic, browse the marketplace of data models, plug these models into your app, and automatically get access to all data stored on the network that conforms to those data models. The community is constantly creating new tooling that make it easier to build, and expand what's possible with composable data.
Building composable applications with Web3 data on Ceramic is simple. Install Ceramic, browse available models, plug them into your app, and automatically get access to all data stored on the network that conforms to those data models. The community is constantly creating new tooling that make it easier to build, and expand what's possible with composable data.

### Sign in with Web3

Expand All @@ -43,6 +58,3 @@ Ceramic uses the decentralized identifier (DID) standard for user accounts, whic

The Ceramic network is decentralized and permissionless, allowing anyone in the world to spin up a node to provide storage, compute, and bandwidth resources to users and applications built on the network. Today there are no tokenized incentives for running Ceramic, but the community is exploring options.

### Scalability

Ceramic's data network infrastructure is highly-scalable and can service use cases where high amounts of data throughput is needed. On Ceramic, every data object maintains its own state and nodes independently process stream transactions, allowing unbounded parallelization. This enables Ceramic to operate at worldwide data scale, which is orders of magnitude greater than the scale needed for decentralized finance.
Loading

0 comments on commit 3d56422

Please sign in to comment.