Skip to content

Commit 86547f0

Browse files
authored
docs: update non-tutorial Platform docs against current public repos (#139)
* Refresh Platform docs for current public sources * Refine Platform docs scope and stale explanations * Address Platform docs PR feedback * Polish SDK doc links and setup versions
1 parent 68eeed6 commit 86547f0

12 files changed

Lines changed: 109 additions & 64 deletions

File tree

conf.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,14 @@
3535
templates_path = ['_templates']
3636
exclude_patterns = [
3737
'_build',
38+
'.venv',
39+
'venv',
3840
'Thumbs.db',
3941
'.DS_Store',
4042
'README.md',
43+
'CLAUDE.md',
4144
'.devcontainer',
45+
'.codex',
4246
'.local',
4347
'scripts',
4448
'img/dev/gifs/README.md',

docs/explanations/dpns.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ After voting ends, the name is either awarded to one of the identities or locked
6767
Assuming masternodes do not vote to lock, the identity receiving the most votes takes ownership of the name. However, if the vote locks the name, no identity receives it. If only one identity requests the name, they will receive it even if no masternodes vote.
6868

6969
:::{note}
70-
Locked names can no longer be requested or awarded in Dash Platform v1, but the plan is to change this in future updates.
70+
Locked names cannot currently be re-requested or awarded. This policy may be revisited in future Platform releases.
7171
:::
7272

7373
### Implementation

docs/explanations/fees.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ Fees on Dash Platform are divided into two main categories:
1616
Storage fees cover the costs to store the various types of data throughout the network, while processing fees cover the computational costs incurred by the masternodes to process state transitions. For everyday use, processing fees are minuscule compared to storage fees. However, they are important in the prevention of attacks on the network, in which case they become prohibitively expensive.
1717

1818
:::{tip}
19-
Comprehensive details regarding fees will be available in an upcoming *Dash Platform Fee System* DIP.
19+
For the implementation-level constants and limits currently used by Platform, see the
20+
[protocol constants reference](../protocol-ref/protocol-constants.md).
2021
:::
2122

2223
## Costs
@@ -46,7 +47,7 @@ Given fluctuations of the Dash price, a variable *Fee Multiplier* provides a way
4647
feePaid = initialFee * feeMultiplier
4748
```
4849

49-
The Fee Multiplier is subject to change at any time at the discretion of the masternodes via a voting mechanism. Dash Core Group research indicates maintaining fees at approximately 2x the cost of hosting the network is optimal.
50+
The Fee Multiplier is subject to change at any time via network governance and protocol updates.
5051

5152
<!-- Uncomment once link available
5253
An in-depth look at the Fee Multiplier can be found at **link**
@@ -58,7 +59,8 @@ In an attempt to minimize Dash Platform's storage requirements, users are incent
5859

5960
## User Tip
6061

61-
Wallets will be enabled to give users the option to provide a tip to the block proposer in hopes of incentivizing them to include their state transition in the next block. This feature will be especially useful in times of high traffic.
62+
Platform supports a user tip component that can be used to incentivize inclusion of a state
63+
transition in the next block, especially during periods of high traffic.
6264

6365
## Formula
6466

@@ -70,4 +72,4 @@ The high level formula for a state transition's fee is:
7072

7173
<!-- Uncomment once DIP available
7274
See *DIPXX: Dash Platform Fee System* for a detailed breakdown of each component.
73-
-->
75+
-->

docs/explanations/platform-protocol.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,14 @@ For additional detail, see the [State Transition](../explanations/platform-proto
4242

4343
## Versions
4444

45-
| Version | Information |
46-
| :------ | :---------- |
47-
| 0.25 | See details in the [GitHub release](https://github.com/dashpay/platform/releases/tag/v0.25.0). |
48-
| 0.24 | See details in the [GitHub release](https://github.com/dashpay/platform/releases/tag/v0.24.0). |
49-
| 0.23 | See details in the [GitHub release](https://github.com/dashpay/platform/releases/tag/v0.23.0). |
50-
| 0.22 | See details in the [GitHub release](https://github.com/dashpay/platform/releases/tag/v0.22.0). |
51-
| 0.21 | See details in the [GitHub release](https://github.com/dashevo/js-dpp/releases/tag/v0.21.0). |
52-
| 0.20 | This release updated to a newer version of JSON Schema (2020-12 spec) and also switched to a new regex module ([Re2](https://github.com/google/re2)) for improved security. See more details in the [GitHub release](https://github.com/dashevo/js-dpp/releases/tag/v0.20.0). |
45+
Platform Protocol evolves together with the public Dash Platform codebase. For the latest
46+
implementation details and release history, see the
47+
[Dash Platform monorepo](https://github.com/dashpay/platform) and the
48+
[GitHub releases page](https://github.com/dashpay/platform/releases).
49+
50+
Older version-specific notes that referenced pre-mainnet releases have been removed from this page
51+
because they no longer reflect the current public Platform state as clearly as the source
52+
repositories do.
5353

5454
```{toctree}
5555
:maxdepth: 2

docs/index.md

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,15 @@
55
# Platform docs
66

77
Welcome to the Dash Platform developer documentation. You'll find guides and documentation to help
8-
you start working with Dash Platform and building decentralized applications based on the Dash
9-
cryptocurrency. Let's jump right in!
8+
you start working with Dash Platform and building decentralized applications on Dash. This site
9+
focuses on the developer-facing concepts, tutorials, and API references for working with Platform's
10+
public network and open-source tooling.
11+
12+
:::{note}
13+
Looking for the current source tree or lower-level implementation details? See the
14+
[Dash Platform monorepo](https://github.com/dashpay/platform) and the
15+
[Dash Platform Book](https://dashpay.github.io/platform/).
16+
:::
1017

1118
```{eval-rst}
1219
.. grid:: 1 2 3 3
@@ -26,8 +33,8 @@ cryptocurrency. Let's jump right in!
2633
:link-type: ref
2734
:link: tutorials-intro
2835
29-
Basics of building with Dash Platform
30-
36+
Hands-on guides for connecting to Platform and submitting data
37+
3138
+++
3239
:ref:`Click to begin <tutorials-intro>`
3340
@@ -157,6 +164,8 @@ protocol-ref/errors
157164
158165
resources/faq
159166
resources/repository-overview
167+
Dash Platform Monorepo <https://github.com/dashpay/platform>
168+
Dash Platform Book <https://dashpay.github.io/platform/>
160169
Platform Bridge <https://bridge.thepasta.org/>
161170
Platform Explorer <https://platform-explorer.com/>
162171
Testnet Block Explorer <https://insight.testnet.networks.dash.org/insight/>

docs/intro/what-is-dash-platform.md

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,21 @@
44

55
# What is Dash Platform
66

7-
Dash Platform is a [Web3](https://en.wikipedia.org/wiki/Web3) technology stack for building decentralized applications on the Dash network. The two main architectural components, [Drive](../explanations/drive.md) and [DAPI](../explanations/dapi.md), turn the Dash P2P network into a cloud that developers can integrate with their applications.
7+
Dash Platform is a [Web3](https://en.wikipedia.org/wiki/Web3) technology stack for building
8+
decentralized applications on the Dash network. It is best understood as a decentralized data
9+
storage and application layer on top of Dash: developers define schemas and submit structured state
10+
transitions instead of deploying arbitrary user-written code on-chain.
11+
12+
Its core components, [Drive](../explanations/drive.md) and [DAPI](../explanations/dapi.md),
13+
provide structured data storage, identity primitives, rich queries, and verifiable data access on
14+
top of the Dash network.
15+
16+
:::{tip}
17+
Dash Platform is developed in the open. For the current implementation details, package layout, and
18+
build instructions, see the [Dash Platform monorepo](https://github.com/dashpay/platform). For a
19+
broader architectural walkthrough of the Rust codebase, see the
20+
[Dash Platform Book](https://dashpay.github.io/platform/).
21+
:::
822

923
```{eval-rst}
1024
.. raw:: html
@@ -18,19 +32,22 @@ Dash Platform is a [Web3](https://en.wikipedia.org/wiki/Web3) technology stack f
1832

1933
### Decentralized Cloud Storage
2034

21-
Store your application data in the safest place on the Internet. All data stored on the Dash network is protected by Dash's consensus algorithm, ensuring data integrity and availability.
35+
Store structured application data on the Dash network with consensus-backed integrity and
36+
availability.
2237

2338
### Reduced Data Silos
2439

25-
Because your application data is stored across many nodes on the Dash network, it is safe and always available for customers, business partners, and investors.
40+
Because application data is stored across the Dash masternode network, it can be shared and queried
41+
without relying on a single hosted backend.
2642

2743
### Client Libraries
2844

2945
Write code and integrate with Dash Platform using the languages that matter to your business. Don't worry about understanding blockchain infrastructure: a growing number of client libraries abstract away the complexity typically associated with working on blockchain-based networks.
3046

3147
### Instant Data Confirmation
3248

33-
Unlike many blockchain-based networks, data stored on the platform is instantly confirmed by the Dash consensus algorithm to ensure the best user experience for users. With Dash Platform, you can gain the advantages of a blockchain-based storage network without the usual UX compromises.
49+
Unlike many blockchain-based networks, Platform is designed for fast finality and proof-based data
50+
verification, making it practical for light clients and user-facing applications.
3451

3552
```{eval-rst}
3653
.. figure:: ../../img/join-community.svg
@@ -48,12 +65,14 @@ DAPI is a _decentralized_ HTTP API exposing [JSON-RPC](https://www.jsonrpc.org/)
4865

4966
DAPI provides developers the same access and security as running their own Dash node without the cost and maintenance overhead. Unlike traditional APIs which have a single point of failure, DAPI allows clients to connect to different instances depending on resource availability in the Dash network.
5067

51-
Developers can connect to DAPI directly or use a client library. This initial client library, dapi-client, is a relatively simple API wrapper developed by Dash Core Group to provide function calls to the DAPI endpoints.
68+
Developers can connect to DAPI directly or use higher-level SDKs and client libraries maintained in
69+
the Dash Platform monorepo. These libraries handle connection management, data serialization, and
70+
common application workflows. A major design goal of Platform is that clients can verify responses
71+
with proofs rather than trusting the node that served them.
5272

53-
The source for both DAPI and dapi-client are available on GitHub:
73+
The source for these components is available on GitHub:
5474

55-
- DAPI: <https://github.com/dashpay/platform/tree/master/packages/dapi>
56-
- DAPI-Client: <https://github.com/dashpay/platform/tree/master/packages/js-dapi-client>
75+
- Platform monorepo: <https://github.com/dashpay/platform>
5776

5877
### Drive - Decentralized Storage
5978

docs/reference/platform-proofs.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
# Platform Proofs
66

7-
>❗️ Platform v0.22.0
8-
>
9-
> Note: As part of the transition from MongoDB to Dash's [GroveDB](https://github.com/dashpay/grovedb), proofs will be not be available for at least the initial version of Platform v0.22.
7+
Platform proofs are an important part of Dash Platform's trust model. When a response is requested
8+
with `prove: true`, Platform can return proof data that allows clients to verify that the response
9+
matches consensus state.
1010

1111
Since data verification is a critical aspect of Dash Platform, all [Platform endpoints](../reference/dapi-endpoints-platform-endpoints.md) can provide an optional proof that the response is correct. Set the optional `prove` parameter (`"prove": true`) in the request to receive a proof that contains the requested data.
1212

@@ -57,9 +57,10 @@ Dash Platform 0.21.0 introduced updates to support returning multiple store tree
5757
- `documentsProof`
5858
- `stateTransitionProof`
5959

60-
> 🚧
61-
>
62-
> Dash Platform 0.21.0 introduced a 4 byte [protocol version](https://github.com/dashevo/js-dpp/pull/325) that is prepended to the binary format and is not part of the CBOR-encoded data. When parsing proofs it is necessary to exclude these bytes before decoding the returned data with CBOR.
60+
:::{note}
61+
Some proof payloads include a 4-byte protocol version prefix that is not part of the CBOR-encoded
62+
value. When decoding those values, strip the version prefix before CBOR decoding.
63+
:::
6364

6465
#### Structure
6566

docs/resources/faq.md

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,11 @@ Dash Platform has numerous significant advantages, including:
1818
API](../explanations/dapi.md).
1919
- Verifiable data: Efficient [GroveDB proofs](https://www.grovedb.org/) for query responses provide
2020
transparent data integrity.
21+
- Open development: Core Platform components, SDKs, and tooling are developed in public repos and
22+
can be inspected directly.
2123

22-
Although the current feature set covers many use cases, future versions will include features like
23-
smart contracts to make it even more competitive and directly comparable with projects like
24-
Ethereum, etc.
24+
The current feature set already supports identities, names, structured application data, proofs,
25+
and related developer tooling. New capabilities continue to ship in ongoing releases.
2526

2627
:::
2728

@@ -31,8 +32,8 @@ It already is! Dash Platform [launched on
3132
mainnet](https://www.dash.org/news/dash-evolution-v1-0-0-release-announcement/) in Q3 2024 and has
3233
had multiple releases since then to add features such as [NFTs](../explanations/nft.md).
3334

34-
The next major release, v2.0, includes a flexible token system. Multiple teams are working to
35-
improve the SDK experience so developers can more easily get to work building their applications.
35+
To see the current code and implementation work, check the
36+
[Dash Platform repository](https://github.com/dashpay/platform).
3637

3738
:::
3839

@@ -45,13 +46,8 @@ Dash Platform Name Service (DPNS).
4546

4647
:::{dropdown} How can I register a name?
4748

48-
Currently, names can be registered using several technical tools; however, the upcoming [DashPay
49-
Android](https://play.google.com/store/apps/details?id=hashengineering.darkcoin.wallet) update will
50-
provide a much easier way to do this.
51-
52-
Developers and other technical users may want to experiment with registering names using the [JS
53-
SDK](https://docs.dash.org/projects/platform/en/stable/docs/tutorials/identities-and-names/register-a-name-for-an-identity.html)
54-
or [Platform TUI](https://github.com/dashpay/platform-tui/).
49+
Currently, names can be registered using the [DashPay Android wallet](https://play.google.com/store/apps/details?id=hashengineering.darkcoin.wallet).
50+
Developers and other technical users may want to experiment with registering names using the [Dash Evo Tool](https://github.com/dashpay/dash-evo-tool) or the [JavaScript SDK](https://docs.dash.org/projects/platform/en/stable/docs/tutorials/identities-and-names/register-a-name-for-an-identity.html).
5551
:::
5652

5753
::::{dropdown} Can I register multiple names?

docs/resources/repository-overview.md

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,23 @@
55
# Repository Overview
66

77
Dash Platform uses a [monorepo](https://en.wikipedia.org/wiki/Monorepo) structure containing most
8-
packages that comprise Dash Platform. Packages are located in the
9-
[packages](https://github.com/dashpay/platform/tree/master/packages) directory.
8+
of the source code that powers the network, SDKs, and development tooling. The public source tree
9+
is available in the [dashpay/platform](https://github.com/dashpay/platform) repository.
10+
11+
If you want a higher-level architectural walkthrough of the current Rust codebase, see the
12+
[Dash Platform Book](https://dashpay.github.io/platform/).
1013

1114
## SDKs
1215

13-
These are the primary tools for developers building on Dash Platform.
16+
These are the primary tools for developers building on Dash Platform. Package names and exact module
17+
layout can change over time, so treat the monorepo as the source of truth.
1418

1519
| Component | Description |
1620
| - | - |
17-
| [js-evo-sdk](https://github.com/dashpay/platform/tree/master/packages/js-evo-sdk) | JavaScript SDK (`npm install @dashevo/evo-sdk`) |
18-
| [rs-sdk](https://github.com/dashpay/platform/tree/master/packages/rs-sdk) | Rust SDK for building applications on Dash Platform |
19-
| [rs-sdk-ffi](https://github.com/dashpay/platform/tree/master/packages/rs-sdk-ffi) / [swift-sdk](https://github.com/dashpay/platform/tree/master/packages/swift-sdk) | FFI layer and iOS/Swift SDK |
20-
| [wasm-sdk](https://github.com/dashpay/platform/tree/master/packages/wasm-sdk) | WebAssembly bindings for browser-based applications |
21+
| [js-evo-sdk](https://github.com/dashpay/platform/tree/master/packages/js-evo-sdk) | JavaScript tooling for connecting to Platform, creating identities, and submitting state transitions |
22+
| [rs-sdk](https://github.com/dashpay/platform/tree/master/packages/rs-sdk) | Rust-first SDK for building applications and verifying Platform data |
23+
| [rs-sdk-ffi](https://github.com/dashpay/platform/tree/master/packages/rs-sdk-ffi) / [swift-sdk](https://github.com/dashpay/platform/tree/master/packages/swift-sdk) | Shared components used for Swift and other native integrations |
24+
| [wasm-sdk](https://github.com/dashpay/platform/tree/master/packages/wasm-sdk) | WebAssembly-oriented bindings for browser and hybrid environments |
2125

2226
## Platform and Supporting Repositories
2327

docs/sdk-rs/overview.md

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@ based on the Dash Platform Protocol (DPP).
66

77
See the [Quick Start page](quick-start.md) for example setup and use of the SDK.
88

9+
:::{note}
10+
For the current monorepo layout and lower-level implementation details, see the
11+
[Dash Platform repository](https://github.com/dashpay/platform) and the
12+
[Dash Platform Book](https://dashpay.github.io/platform/).
13+
:::
14+
915
## Usage
1016

1117
### Cargo.toml
@@ -21,16 +27,16 @@ dash-sdk = { git="https://github.com/dashpay/platform" }
2127
### Examples
2228

2329
You can inspect tests in the
24-
[`tests/`](https://github.com/dashpay/platform/tree/v1.0-dev/packages/rs-sdk/tests/) folder for
30+
[`tests/`](https://github.com/dashpay/platform/tree/master/packages/rs-sdk/tests/) folder for
2531
detailed examples or see a simple example in the
26-
[`examples/`](https://github.com/dashpay/platform/tree/v1.0-dev/packages/rs-sdk/examples) folder.
32+
[`examples/`](https://github.com/dashpay/platform/tree/master/packages/rs-sdk/examples) folder.
2733
See the [Platform Terminal User Interface (TUI)](https://github.com/dashpay/platform-tui/) for an
2834
application that uses the SDK to execute various state transitions.
2935

30-
:::{attention}
31-
SDK documentation will be available on docs.rs once the Dash SDK crate is published. Meanwhile,
32-
the [pre-release documentation](https://dashpay.github.io/docs-platform/dash_sdk/) is available
33-
for reference. Please keep in mind that it is incomplete and may be outdated.
36+
:::{note}
37+
If you need the latest usage details, examples, or implementation references, prefer the
38+
[Dash Platform monorepo](https://github.com/dashpay/platform) and the
39+
[Dash Platform Book](https://dashpay.github.io/platform/) over older hosted snapshots.
3440
:::
3541

3642
### Mocking

0 commit comments

Comments
 (0)