-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
doc: Enhanced and updated all documentation
- Loading branch information
1 parent
ef38bc9
commit a3beebb
Showing
22 changed files
with
763 additions
and
427 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,22 +1,78 @@ | ||
# Substrate Cumulus Parachain Template | ||
# Redot | ||
|
||
A new [Cumulus](https://github.com/paritytech/cumulus/)-based Substrate node, ready for hacking ☁️.. | ||
Redot serves as Polkadot's re-staking layer. It includes a specialized parachain, essentially an adapter for Polkadot's consensus layer, designed to extend the capabilities of the consensus layer. Redot comprises a parachain and redlight. The parachain facilitates on-chain management of various tasks and validators. redlight is a lightweight client for validators, used for completing different validation tasks. | ||
|
||
This project is originally a fork of the | ||
[Substrate Node Template](https://github.com/substrate-developer-hub/substrate-node-template) | ||
modified to include dependencies required for registering this node as a **parathread** or | ||
**parachain** to a **relay chain**. | ||
## Philosophy | ||
|
||
The stand-alone version of this template is hosted on the | ||
[Substrate Devhub Parachain Template](https://github.com/substrate-developer-hub/substrate-parachain-template/) | ||
for each release of Polkadot. It is generated directly to the upstream | ||
[Parachain Template in Cumulus](https://github.com/paritytech/cumulus/tree/master/parachain-template) | ||
at each release branch using the | ||
[Substrate Template Generator](https://github.com/paritytech/substrate-template-generator/). | ||
- Zero Knowledge Leakage: As a consensus layer, Polkadot should not be privy to information about layers like data availability. This focus on consensus allows Polkadot to be more efficient. Redot, as an adapter to the consensus layer, extends its capabilities to the data availability layer through re-staking. | ||
- Neutrality: Redot imposes no restrictions on the nature of tasks. It supports tasks beyond data availability and accommodates various data availability layers. | ||
- Lightweight: Validator tasks should be sufficiently lightweight. Only information pertinent to the consensus layer should be incorporated into these tasks. | ||
|
||
👉 Learn more about parachains [here](https://wiki.polkadot.network/docs/learn-parachains), and | ||
parathreads [here](https://wiki.polkadot.network/docs/learn-parathreads). | ||
## 模块 | ||
|
||
Redot 包含了以下模块: | ||
|
||
🧙 Learn about how to use this template and run your own parachain testnet for it in the | ||
[Devhub Cumulus Tutorial](https://docs.substrate.io/tutorials/v3/cumulus/start-relay/). | ||
* [core-primitives](./crates/core-primitives/): Implements specific primitives for DKG, threshold signature encryption. | ||
* [rc-validator](./crates/rc-validator/): Depends on the validator network to execute different methods. | ||
* [rc-validator-fetch](./crates/rc-validator-fetch/): A module that supports storing and fetching validator information in different environments. | ||
* [rc-validator-network](./crates/rc-validator-network/): Implementation of the validator network for communication among validators. | ||
* [task](./pallets/task/): Task module for managing different tasks and key rotation, etc. | ||
* [validator-registry](./pallets/validator-registry/): Validator registration and deletion module, using OCW for verification. | ||
* [redlight](./redlight/): A lightweight client for validators to complete various validation tasks. | ||
* [redoxt](./redoxt/): A module for communication with the parachain. | ||
|
||
## Building | ||
|
||
### Setup rust | ||
|
||
Install Rust: | ||
|
||
```bash | ||
curl https://sh.rustup.rs -sSf | sh | ||
``` | ||
|
||
You will also need to install the following packages: | ||
|
||
mac | ||
|
||
```bash | ||
brew install cmake pkg-config openssl git llvm | ||
``` | ||
|
||
Linux | ||
|
||
```bash | ||
sudo apt install cmake pkg-config libssl-dev git clang libclang-dev protobuf-compiler | ||
``` | ||
|
||
More: Redot is based on Substrate, for more information please go to [Substrate](https://docs.substrate.io/install/). | ||
|
||
### Build | ||
|
||
1. Compile the parachain: | ||
|
||
```bash | ||
make build-default | ||
``` | ||
|
||
2. Compile the redlight node: | ||
|
||
```bash | ||
make build-light | ||
``` | ||
|
||
## 3. Run | ||
|
||
You can start a development chain with: | ||
|
||
```bash | ||
make run-dev | ||
``` | ||
|
||
However, this does not produce actual blocks. Since Redot is a parachain, it is recommended to use [Zombienet](https://github.com/paritytech/zombienet) for actual operation. | ||
|
||
To launch a light node: | ||
|
||
```bash | ||
make run-light | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.