Skip to content

Commit

Permalink
[+] kv-service/use-cases
Browse files Browse the repository at this point in the history
  • Loading branch information
nykma committed Oct 13, 2022
1 parent 7dd8c18 commit ff99048
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 3 deletions.
12 changes: 10 additions & 2 deletions docs/kv-service/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,15 @@ chain](/proof-service/glossary.md#glossary-proof-chain) to ensure:

- Traceable: all changes are approved by user and cannot be falsified
by third parties.
- Revertable: works like `git` patch set.

:::caution WIP

Reversion is not implemented for now, but [should be kinda easy to impl
](https://github.com/nextdotid/kv_server/issues/7).

:::

- Decentralized: The user has the full right to dispose the data.

:::caution WIP
Expand Down Expand Up @@ -67,8 +76,7 @@ verify each changes, and restore the final data status.

## Use case

- Web3 apps need to save user configurations
> e.g. profile (name, avatar link, bio, etc.), NFT showcase (hide/show, order, etc.) or wallet address priority.
See [use cases](kv-use-cases).

## Workflow

Expand Down
19 changes: 19 additions & 0 deletions docs/kv-service/use-cases.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
id: kv-use-cases
title: Use Cases
sidebar_position: 7
---

KVService works as a general key-value store. It can be used in many different scenarios. This page lists some of the use cases.

## KVService as a persistence storage

You can use KVService to store the data that needs cross-session persistence.

For example, you can store the user's avatar, nick name, bio, show/hide status of NFT list, or order of these contents, under your web3 app's scenarios.

Using KVservices gives you some benefits:

- The change made by user is verifiable by other user / applications, aka platform-independent. No one (except the user himself) can change the data without a valid signature.
- The data is stored in a decentralized way, no matter where this data is actually stored. User always has a choice to move their data to other (or self-hosted) platforms.
> The actual "migration" function is still under development.
2 changes: 1 addition & 1 deletion sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ module.exports = {
type: 'category',
label: 'KVService',
collapsed: true,
items: ['kv-service/kv-intro']
items: ['kv-service/kv-intro', 'kv-service/kv-faq', 'kv-service/kv-use-cases', 'kv-service/kv-api']
}, {
type: 'category',
label: 'RelationService',
Expand Down

0 comments on commit ff99048

Please sign in to comment.