diff --git a/website/docs/cmixx/design-specs/_category_.json b/website/docs/cmixx/design-specs/_category_.json new file mode 100644 index 0000000000000000000000000000000000000000..f61fb5c0ad9f805e71acd3a25690afa5e0960fec --- /dev/null +++ b/website/docs/cmixx/design-specs/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "cMixx Design Specs", + "position": 2, + "link": { + "type": "generated-index", + "description": "All things related to cMix" + } +} diff --git a/website/docs/dapps/intro.md b/website/docs/dapps/intro.md index 4d944060479dc271b99e7163c658e3254fc987b8..ac0d073aca17a471b4bf252c7bb4105b485e06f2 100644 --- a/website/docs/dapps/intro.md +++ b/website/docs/dapps/intro.md @@ -1 +1,6 @@ -todo \ No newline at end of file +# About dApps + +dApps are generally 3rd Party applications. +Support +Links +Etc. \ No newline at end of file diff --git a/website/docs/dapps/phoenixx.md b/website/docs/dapps/phoenixx.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..9a3ca2c188043ea55722b2e60f6afad96ce70514 100644 --- a/website/docs/dapps/phoenixx.md +++ b/website/docs/dapps/phoenixx.md @@ -0,0 +1 @@ +# Phoenixx \ No newline at end of file diff --git a/website/docs/dapps/speakeasy.md b/website/docs/dapps/speakeasy.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..120643c0d5d19c5ba772cd5e894f63b34d705db0 100644 --- a/website/docs/dapps/speakeasy.md +++ b/website/docs/dapps/speakeasy.md @@ -0,0 +1 @@ +# Speakeasy \ No newline at end of file diff --git a/website/docs/intro.md b/website/docs/intro.md index 3f868e1ff9557a18e4fb74efcd24858fefe7f809..e3482f15731d9e4311c79837ee0b5623bfdf834c 100644 --- a/website/docs/intro.md +++ b/website/docs/intro.md @@ -5,7 +5,7 @@ slug: / # xx network Documentation -This documentation aims to help understand the core concepts of xx network, its blockchain (xxChain) and its communication layer (cMixx). You will also find documentation covering advanced topics, end-user tools, use-cases and tutorials. +This documentation aims to help understand the core concepts of xx network, its blockchain ([xxChain](xxchain/)) and its communication layer ([cMixx](cmixx/)). You will also find documentation covering advanced topics, end-user tools, use-cases and tutorials. As an open-source project, suggesting new topics, adding new content, and providing corrections are welcome. All documentation can be edited via GitLab. If you're unsure how, follow these instructions (TODO). diff --git a/website/docs/overview/cmix.md b/website/docs/overview/cmixx.md similarity index 100% rename from website/docs/overview/cmix.md rename to website/docs/overview/cmixx.md diff --git a/website/docs/overview/softwareOverview.md b/website/docs/overview/softwareOverview.md deleted file mode 100644 index b869451553c688c99941d775a84d534abd5e11ca..0000000000000000000000000000000000000000 --- a/website/docs/overview/softwareOverview.md +++ /dev/null @@ -1,245 +0,0 @@ -# xx Network Software Overview - - -The xx Network codebase is combined between xx Labs’ consensus software -and Elixxir’s cMixx protocol. - -Elixxir software is organized into four groups of repositories as shown -in the figure: Core, Services, Clients, and Tools. The *Core* libraries -handle functionality across Clients and Services, which contain data -structures, interfaces, and cryptography common to many xx Network -components. *Services* implement various messenger features, as well as -authorizing Clients and Nodes to join the network. *Clients* interact -with the network using a shared [Client API (xxDK)](../cmix/xxdk/overview.md). *Tools* provide several -interfaces and utilities to deploy, test, and debug the network. - -Most of the Elixxir code found in the Core and Services is written in -the Go programming language. The repositories listed as public below can -be found on the public [Elixxir](https://git.xx.network/elixxir) and [xx -network](https://git.xx.network/xx_network) Git pages. Most software is -posted on a git server run by xx Network. - -xx Labs' software is based on Substrate and involves a fork of Substrate -and custom "pallets" implementing xx Network-specific features. This -software is mainly hosted on public [GitHub](https://github.com/xx-labs) -repositories but will be mostly moved to the [xx -labs](https://git.xx.network/xx-labs) on the xx Network git shortly. - -To follow the setup guide, most Node operators will likely elect to -download the prepackaged tarballs containing the compiled binaries. To -learn more, refer to the *Node and Gateway Software* section. - -## [xx network Codebase](https://git.xx.network/xx_network/) -:::note -TODO Public/Private note -::: -### xx network/[Primitives](https://git.xx.network/xx_network/primitives) - -The xx network Primitives repository contains the basic data structures -and utilities used in the Elixxir and Praxxis codebases. This includes -the ID structure for Nodes, Gateways, and users and the NDF structure. -Additional generic structures and utilities are also contained in -Primitives, such as file access and rate-limiting utilities. - -### xx network/[Crypto](https://git.xx.network/xx_network/crypto) - -The xx Network Crypto repository contains cryptographic primitives that -are shared between Elixxir and Praxxis codebases. Primarily lower-level -primitives, randomness generation, TLS handling, and nonce handling. - -### xx network/[Comms](https://git.xx.network/xx_network/comms) - -The Comms repository handles all network communication functionality as -well as all of the core connectivity logic. It includes generic comms -handlers and protocols and not specific implementations, which are -implemented in the respective Comm branches for each project. - -### xx network/[Scheduling-Scripts](https://git.xx.network/xx_network/scheduling-scripts) - -Scripts used to direct the scheduling server based upon blockchain -state, as well as return state for tokenomics - -## [Elixxir Codebase](https://git.xx.network/elixxir/) - -### Elixxir/[Primitives](https://git.xx.network/elixxir/primitives) - -The Elixxir Primitives repository contains the basic data structures and -utilities that are used by all Elixxir repositories. This includes the -user fact structure, the cMixx message structure, and the version object. - -### Elixxir/[Crypto](https://git.xx.network/elixxir/crypto) - -The Crypto repository encompasses all of the base cryptographic -functionality found in the codebase. Relying heavily on Go’s *big -integer* implementation, Crypto features a cryptographically secure -random number generator implementation, libraries for working with large -integers in modulo cyclic groups for cMixx operations, and basic -encrypt/decrypt functionality. Like Primitives, Crypto only contains -code that is generic to the larger system. A core approach to this -repository is to supply wrappers for operations that may require -migration to other implementations in the future. - -### Elixxir/[Comms](https://git.xx.network/elixxir/comms) - -Comms builds on the generic utilities of xx Network Comms to provide -specific functionality for Elixxir. It holds a gRPC protocol file along -with a thin Client/Server implementation. The repository currently uses -TLS certificates with RSA keys for encryption and identification, which -will migrate to xx consensus-based quantum secure authenticated channels -as development progresses. - -### Elixxir/[GPUMaths](https://git.xx.network/elixxir/gpumathsgo) - -The GPUMaths repository accelerates the math used by Server, especially -for precomputations. It provides a subset of the math implemented in the -Crypto repository but accelerated on GPUs. Underlying the acceleration is a publicly available CUDA arbitrary-precision math library, CGBN2. -Components of this written in CUDA are in a separate repository -[gpumathsnative](https://gitlab.com/elixxir/gpumathsnative). - -## Services - -### Elixxir/[Server](https://git.xx.network/elixxir/server) - -The Server repository implements the core cMixx functionality and is the -software that a Node runs. It performs precomputation and real-time -computation and processes messages. In addition, it receives batches of -messages from the Gateways as well as performs network team operations. - -### Elixxir/[Gateway](https://git.xx.network/elixxir/gateway) - -The Gateway repository contains the API for Clients to interact with the -network. Every Node runs a Gateway and the Gateways collect and store -messages for Clients. Gateway is designed to be a scalable front-end to -the xx Network. - -### Elixxir/[Scheduling](https://git.xx.network/elixxir/registration) - -Permissioning, also referred to as Scheduling, manages the NDF for -Clients and Servers and schedules cMixx rounds within the network. -Eventually, this functionality will be managed by the distributed xx -consensus. For now, this code handles admission, manages which Nodes are -part of the network, and orchestrates when Nodes operate. - -### Elixxir/[Notifications](https://git.xx.network/elixxir/notifications-bot) - -Implements a private notifications system, allowing users to receive -notifications on their phone when using the xx messenger. Does so via -Firebase for Android and Apple APNs for iOS. - -### Elixxir/[Authorizer](https://git.xx.network/elixxir/authorizer) :lock: - -Edge server that Nodes contact to get let through the firewall to talk -to the Scheduling server. - -### Elixxir/[Client Registrar](https://git.xx.network/elixxir/client-registrar) - -Edge server which authorizes clients into the network - -## Clients - -### Elixxir/[Client API (xxDK)](https://git.xx.network/elixxir/client) - -All Clients use the Client API to interact and send messages with the -cMixx network. In addition, it uses Go mobile to produce a library -compatible with iOS and Android. - -### Elixxir/[User Discovery (UD)](https://git.xx.network/elixxir/user-discovery-bot) - -User Discovery helps users make the first contact with other users. -Using the "singe use" package within the xxDK, User Discovery implements -a completely private user lookup, where the system cannot determine -which user is querying. The system leverages Twilio to verify emails and -phone numbers if the user would like to do so. - -### Elixxir/Mobile Clients -* [xx Messenger - Android](https://gitlab.com/elixxir/client-android) -* [xx Messenger - iOS](https://gitlab.com/elixxir/client-ios) - -Currently, clients exist for iOS and Android operating systems. These -both use the Go mobile libraries produced in the Client API. - -## Tools - -### Elixxir/[Wrapper Script](https://git.xx.network/elixxir/wrapper) - -The Wrapper Script is a Node and Gateway management script that -simplifies the running of the xx Network software. The script automates -the management of the xx Network software log files. For easy management -or in the event of an error, it starts, stops, and restarts the software -without requiring the operator to revisit the command line. Optionally, -it can automatically update the Node and Gateway with the latest xx -network binaries and configuration files. To learn more, refer to the -Wrapper Script Arguments section. - -### Elixxir/[DevOps](https://git.xx.network/elixxir/) :lock: - -DevOps is a deployment platform for Microsoft Azure, Google Cloud -Platform, and Amazon Web Services (AWS) written in Terraform. DevOps -allows for the deployment of test networks, management of deployments of -individual Nodes, and the deployment of multi-cloud implementations of -xx Network. - -### Elixxir/[Integration](https://git.xx.network/elixxir/integration) - -The Integration repository is a series of end-to-end tests designed to -test different functionality of the cMixx protocol. For example, several -tests focus on different batch sizes with Nodes only. Another test -covers all the Client-level interactions within the network. - -### Elixxir/[Local Environment](https://git.xx.network/elixxir/localenvironment) - -The Local Environment repository contains a set of scripts designed to -allow testing the entire platform on a single machine. - -## Version Scheme - -Both Gateway and Node binaries have a version string embedded in them, -consisting of a major version, a minor version, and a patch string, -separated by a period. - -| Major | | Minor | | Patch | -|-------|-----|-------|-----|-------| -| ┌┴┠| | ┌┴┠| | ┌─┴─┠| -| 4 | . | 2 | . | 6ab | - -To participate in the network, a Node or Gateway has to have a -compatible version with the required version reported by the Scheduling -server. For a version to be compatible, the major version must be equal -to the required major version and the minor version must be greater than -or equal to the required minor version. The patch can be anything, but -it will always be present. - -## [xx labs Codebase](https://github.com/xx-labs) - -### xx-labs/[sleeve](https://github.com/xx-labs/sleeve) - -The xx labs sleeve repository contains code to generate Sleeve wallets. -The sleeve is a novel way of embedding a quantum secure key in the -generation of curve-based, non-quantum secure keys. In addition, the -repository contains an implementation of the WOTS+ signature scheme, -which is used as the quantum-secure fallback for Sleeve wallets. - -### xx-labs/[xxchain](https://github.com/xx-labs/xxchain) - -The xxchain repository contains the code for the xx Network blockchain -node, which is based on Substrate. It contains the following pallets -(modules) that are necessary for xx Network, among others: - -- **xx-betanet-rewards:** allows users to select an option for the - BetaNet Staking Rewards program, which can only be accepted and - enacted after a Referendum passes using Democracy; -- **xx-cmix:** hosts cMixx variables and software hashes on-chain, and - allows scheduling server to push points information according to - cMixx rounds completed/failed; -- **xx-economics:** Implements the unique token economics of xx - network. This includes a rewards pool from which staking rewards are - taken, only leading to inflation of the total supply after the pool - is empty, and an adjustable maximum inflation value according to - block number, which allows xx Network’s inflation to be decreasing - over multiple years. - -### xx-labs/[substrate](https://github.com/xx-labs/substrate) - -The xx labs substrate repository is a fork of the [Substrate framework](https://github.com/paritytech/substrate). The xx-network -branch of this repository contains Staking pallet modifications specific -to the xx Network, such as the inclusion of cMixx IDs. diff --git a/website/docs/overview/chain.md b/website/docs/overview/xxchain.md similarity index 56% rename from website/docs/overview/chain.md rename to website/docs/overview/xxchain.md index c81eb9ed914feb53142b38f8ac254366eff7268d..17b2596114d442cb531a2007a3bd6f58b28e82d2 100644 --- a/website/docs/overview/chain.md +++ b/website/docs/overview/xxchain.md @@ -2,6 +2,6 @@ sidebar_position: 2 --- -# What is xx Chain? +# What is xxChain? -xx Chain is the unique consensus protocol that protects and secures the xx Network blockchain. After transactional data is neutralized through cMixx, payments are passed to the decentralized xx Nodes running the xx Chain protocol. The nodes then confirm transactions and add them to the xx blockchain. Learn more in the xx consensus whitepaper. \ No newline at end of file +xx Chain is the unique consensus protocol that protects and secures the xx Network blockchain. After transactional data is neutralized through cMixx, payments are passed to the decentralized xx Nodes running the xxChain protocol. The nodes then confirm transactions and add them to the xxChain. Learn more in the xx consensus whitepaper. \ No newline at end of file diff --git a/website/docs/overview/xxnetwork.md b/website/docs/overview/xxnetwork.md index 66d1bb02fdec781d1ecea8889e5123721cce16a0..6a6bc7c0d5cc90eb212639d4d66776aea52330fa 100644 --- a/website/docs/overview/xxnetwork.md +++ b/website/docs/overview/xxnetwork.md @@ -2,25 +2,26 @@ sidebar_position: 1 --- -# What is xx Network? +# What is xx network? -xx network is the secure and efficient decentralized ecosystem of the future. Founded by the godfather of digital currency and privacy technology David Chaum, the xx network MainNet launched in November 2021. xx network consists of a fast, low-fee quantum-ready layer 1 blockchain built in tandem with the most private communications network in the world (cMixx). By leveraging the xxDK, any application or blockchain can route their traffic through the xx network's communications layer in order to provide metadata privacy and quantum-secure encryption for all types of data communications. +xx network is a secure and efficient decentralized ecosystem. Founded by the "Godfather of Digital Currency", [David Chaum](https://en.wikipedia.org/wiki/David_Chaum). The xx network MainNet launched in November 2021. xx network consists of a fast, low-fee quantum-ready layer 1 blockchain, [xxChain](xxchain), built in tandem with the most private communications network in the world, [cMixx](cmixx). By leveraging the "xx Developer Kit" ([xxDK](../cmixx/xxdk/overview.md)), any application or blockchain can route their traffic through the xx network's communications layer in order to provide metadata privacy and quantum-secure encryption for all types of data communications. -## Current xx Network Architecture -The MainNet is generally composed of three components: Nodes, Gateways, and clients. Within themselves, all three of these components handle two functions: interacting with cMixx, the private communications layer, and the xx Chain. +## Current xx network Architecture + +The MainNet is generally composed of three components: Nodes, Gateways, and clients. Within themselves, all three of these components handle two functions: interacting with cMixx, the private communications layer, and the xxChain.  -* Nodes: The core operators of the network; they execute the cMixx protocol and act as validators within the xx Chain. +* Nodes: The core operators of the network; they execute the cMixx protocol and act as validators within the xxChain. * Gateways: The public-facing components of Nodes, one exists per Node. They store received messages, provide public access to data, and run a light node for public access. -* Clients: Clients come in two versions, cMixx clients and xx Chain clients. cMixx clients access the communications layer and can send and receive private communications. xx Chain clients are currently limited to block explorers and other interactions with the blockchain. +* Clients: Clients come in two versions, cMixx clients and xxChain clients. cMixx clients access the communications layer and can send and receive private communications. xxChain clients are currently limited to block explorers and other interactions with the blockchain. + +## Full xx network Decentralization -## Full xx Network Decentralization In a future update, the scheduling server will be eliminated and replaced by an on-chain consensus operation which will work as follows:  * To be scheduled, a Node will submit a transaction to the network known as a waiting bid. Once accepted into a block, the Node will be written into the “waiting pool†for a maximum number of blocks. -* The waiting pool will not be exhausted below 30% of the total number of online xx Nodes (in the waiting pool + currently running rounds) to ensure proper mixing between Nodes in a team. Every block producer will use the block randomly to execute a fisher-yates shuffle on the waiting pool, selecting Nodes 1 through 5 as the first team, nodes 6 through 10 as the second team, etcetera until the waiting pool is exhausted. +* The waiting pool will not be exhausted below 30% of the total number of online xx Nodes (in the waiting pool + currently running rounds) to ensure proper mixing between Nodes in a team. Every block producer will use the block randomly to execute a [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle) on the waiting pool, selecting Nodes 1 through 5 as the first team, nodes 6 through 10 as the second team, etc. until the waiting pool is exhausted. * The teams will see their formation and work together to execute their precomputation. Once completed, they will select a time to execute their realtime based upon network congestion and generate a joint certificate on the round realtime start. This will be passed to the Gateways and gossiped throughout the Gateway network. * Clients, who are polling the Gateways, will see realtime certificates as well as the scheduling of the team within the block and select a round to submit messages to. * Once a realtime time has been reached, the nodes will begin the realtime, rapidly anonymizing the messages. * Once complete, the mixed messages will be delivered to the Gateway and the team will form a joint certificate stating the completion of the round. This will be submitted as a transaction to the blockchain. * Once the certificate of completion is received from the team, they will be awarded points towards compensation for the era and entered back into the waiting pool automatically. If the certificate does not get received by the blockchain before a predefined number of blocks, the round will be considered failed and the team will not be re-entered back into the waiting pool until they submit another waiting bid. At any time, any member of the team can submit a failure certificate for the round, canceling it and allowing the team members to bid back into the waiting pool. - diff --git a/website/docs/tools/dashboard/dashboard.md b/website/docs/tools/dashboard.md similarity index 99% rename from website/docs/tools/dashboard/dashboard.md rename to website/docs/tools/dashboard.md index 2211cb1db13e310141074c141dc2468f4914f42a..9988d5709b2b99f98ac215f46bd004f4966c9108 100644 --- a/website/docs/tools/dashboard/dashboard.md +++ b/website/docs/tools/dashboard.md @@ -1,4 +1,4 @@ -# About +# cMixx Dashboard # [Quick View](https://dashboard.xx.network/) The above link will bring you to cMix Dashboard Quick View. diff --git a/website/docs/tools/dashboard/_category_.json b/website/docs/tools/dashboard/_category_.json deleted file mode 100644 index 51ce2900f0822f6f4e0396ea914231d54e471988..0000000000000000000000000000000000000000 --- a/website/docs/tools/dashboard/_category_.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "label": "cMixx Dashboard", - "position": 2, - "link": { - "type": "generated-index", - "description": "How to get things done" - } -} diff --git a/website/docs/tools/explorer/explorer.md b/website/docs/tools/explorer.md similarity index 58% rename from website/docs/tools/explorer/explorer.md rename to website/docs/tools/explorer.md index 6b25718dae8b4dd888d8f532af0c5565eb0e2868..ad6fd8cc655f4f6db2168607ab768f689636ba30 100644 --- a/website/docs/tools/explorer/explorer.md +++ b/website/docs/tools/explorer.md @@ -1 +1,2 @@ +# xxChain Explorer https://explorer.xx.network \ No newline at end of file diff --git a/website/docs/tools/explorer/_category_.json b/website/docs/tools/explorer/_category_.json deleted file mode 100644 index 2a79f6795960c85c4c44892cebdfa4d2490a5371..0000000000000000000000000000000000000000 --- a/website/docs/tools/explorer/_category_.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "label": "xxChain Explorer", - "position": 1, - "link": { - "type": "generated-index", - "description": "How to get things done" - } -} diff --git a/website/docs/tools/simpleStaking.md b/website/docs/tools/simpleStaking.md new file mode 100644 index 0000000000000000000000000000000000000000..9f2dbc3439ed0a945f2e10d4d626a6150be8ebc8 --- /dev/null +++ b/website/docs/tools/simpleStaking.md @@ -0,0 +1,2 @@ +# Simple Staking +https://staking.xx.network \ No newline at end of file diff --git a/website/docs/tools/simpleStaking/_category_.json b/website/docs/tools/simpleStaking/_category_.json deleted file mode 100644 index 8a8d0b7e9deeebbf893bc5fc5d25a0bf488609ca..0000000000000000000000000000000000000000 --- a/website/docs/tools/simpleStaking/_category_.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "label": "Simple Staking", - "position": 4, - "link": { - "type": "generated-index", - "description": "How to get things done" - } -} diff --git a/website/docs/tools/simpleStaking/simpleStaking.md b/website/docs/tools/simpleStaking/simpleStaking.md deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/website/docs/tools/sleeve/sleeve.md b/website/docs/tools/sleeve.md similarity index 100% rename from website/docs/tools/sleeve/sleeve.md rename to website/docs/tools/sleeve.md diff --git a/website/docs/tools/sleeve/_category_.json b/website/docs/tools/sleeve/_category_.json deleted file mode 100644 index 1adae180e674102a2459d01d0d5468626185fbf6..0000000000000000000000000000000000000000 --- a/website/docs/tools/sleeve/_category_.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "label": "Sleeve Wallet Generator", - "position": 2, - "link": { - "type": "generated-index", - "description": "How to get things done" - } -} diff --git a/website/docs/tools/webWallet/accounts/accountTypes.md b/website/docs/tools/webWallet/accounts/accountTypes.md index deadfb1521caa3fc3878320fc58e2caf891b92fd..29023ee670106fd85ff0d117fbb3c60ac0b5255e 100644 --- a/website/docs/tools/webWallet/accounts/accountTypes.md +++ b/website/docs/tools/webWallet/accounts/accountTypes.md @@ -1,3 +1,5 @@ --- sidebar_position: 3 ---- \ No newline at end of file +--- + +# Account Types \ No newline at end of file diff --git a/website/docs/tools/webWallet/accounts/addContact.md b/website/docs/tools/webWallet/accounts/addContact.md index b89031da1f6a56b78bade7867eb244efe7a36fb0..82aa05b748cdd88fc796f6bc535e4f4cd232362f 100644 --- a/website/docs/tools/webWallet/accounts/addContact.md +++ b/website/docs/tools/webWallet/accounts/addContact.md @@ -1,3 +1,5 @@ --- sidebar_position: 6 ---- \ No newline at end of file +--- + +# Add Contacts \ No newline at end of file diff --git a/website/docs/tools/webWallet/governance/voting.md b/website/docs/tools/webWallet/governance/voting.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..9cd78a99af2000aa0431ef6c2dbdaa7a1a04fd55 100644 --- a/website/docs/tools/webWallet/governance/voting.md +++ b/website/docs/tools/webWallet/governance/voting.md @@ -0,0 +1 @@ +# Voting \ No newline at end of file diff --git a/website/docs/tools/webWallet/staking/bond.md b/website/docs/tools/webWallet/staking/bond.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..4f0e7a624a9776fbf8d30a95211ff901fd1ddd3c 100644 --- a/website/docs/tools/webWallet/staking/bond.md +++ b/website/docs/tools/webWallet/staking/bond.md @@ -0,0 +1 @@ +# Bonding xx Coins \ No newline at end of file diff --git a/website/docs/tools/webWallet/staking/payout.md b/website/docs/tools/webWallet/staking/payout.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..544c3752226873a7db35b86b44438a3e346fbc21 100644 --- a/website/docs/tools/webWallet/staking/payout.md +++ b/website/docs/tools/webWallet/staking/payout.md @@ -0,0 +1 @@ +# Payouts \ No newline at end of file diff --git a/website/docs/tools/webWallet/staking/staking.md b/website/docs/tools/webWallet/staking/staking.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..463ffe021f49a6588f7c2166d224a687cd110124 100644 --- a/website/docs/tools/webWallet/staking/staking.md +++ b/website/docs/tools/webWallet/staking/staking.md @@ -0,0 +1 @@ +# Staking \ No newline at end of file diff --git a/website/docs/tools/webWallet/staking/unbond.md b/website/docs/tools/webWallet/staking/unbond.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..869aef46f78967c1d4852133ed11d0916799d53c 100644 --- a/website/docs/tools/webWallet/staking/unbond.md +++ b/website/docs/tools/webWallet/staking/unbond.md @@ -0,0 +1 @@ +# Unbonding xx Coins \ No newline at end of file diff --git a/website/docs/tools/webWallet/staking/validate.md b/website/docs/tools/webWallet/staking/validate.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6b126f40d22bf76aff2a8fadf9e54ea00f462ce9 100644 --- a/website/docs/tools/webWallet/staking/validate.md +++ b/website/docs/tools/webWallet/staking/validate.md @@ -0,0 +1 @@ +# Validating \ No newline at end of file diff --git a/website/docs/xxchain/API Documents/_category_.json b/website/docs/xxchain/API Documents/_category_.json index 8283b764f5eac3f53305585997f50322571319b9..ebf9bd768ca24bd208806aecd4d9d92b17bbd91e 100644 --- a/website/docs/xxchain/API Documents/_category_.json +++ b/website/docs/xxchain/API Documents/_category_.json @@ -1,6 +1,6 @@ { "label": "API Documents", - "position": 2, + "position": 3, "link": { "type": "generated-index", "description": "All things related to Chain" diff --git a/website/docs/xxchain/governance.md b/website/docs/xxchain/governance.md index 7e47fbcb5885de8991f8ff1595bce14e05ce251b..57cb6d17eb5f15cad4a31577cd06cc4591763d3e 100644 --- a/website/docs/xxchain/governance.md +++ b/website/docs/xxchain/governance.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 2 +--- + # Governance The xx Network uses stake-based governance based upon the standard governance within the Substrate Ecosystem. diff --git a/website/docs/xxchain/runtimeUpdate.md b/website/docs/xxchain/runtimeUpdate.md deleted file mode 100644 index e78fdf7d4fd82bae71c58bb9684df445e639b3d1..0000000000000000000000000000000000000000 --- a/website/docs/xxchain/runtimeUpdate.md +++ /dev/null @@ -1,130 +0,0 @@ -# Runtime Update Tutorial -This page describes how to perform a runtime update (code change) -in the xx Network blockchain. - -## Versioning - -xx Chain version follows the standard Semantic versioning of -`v[major].[minor].[patch]` - -Runtime versioning stays inline with the xx Chain version, using a 6 -digit string. - -For example: - -- v0.2.0 -> runtime 00 02 00 = 200 -- v0.2.3 -> runtime 00 02 03 = 203 -- v1.0.0 -> runtime 01 00 00 = 10000 -- v1.1.0 -> runtime 01 01 00 = 10100 - -If a particular change in xx Chain is client side only (no runtime -changes), then the runtime version stays the same. These sort of changes -should always be patches. - -## Runtime Compilation - -Steps: - -1. Create a branch containing the desired changes to the runtime - (example: - [xxnetwork-runtime-203](https://github.com/xx-labs/xxchain/tree/xxnetwork-runtime-203)) - - Naming should follow the standard: - \[spec_name\]-runtime-\[spec_version\] - - Make sure the spec version is correctly increased for the - runtime - - Example: current runtime spec version is 202, so the new version - needs to be at least 203 for the upgrade to be performed - - Make sure Cargo.toml versions are also increased for the cli and - runtime packages. Also, any packages that import the runtime - should be updated to import the new version -2. Commit changes to git, and create a tag following the Semantic - versioning rules described above -3. Compile the binary (which compiles the runtime) - -Alternatively, if a release already exists, you can get the necessary -binary, runtime code and subwasm information from the release notes. - -Example: -[v0.2.3](https://github.com/xx-labs/xxchain/releases/tag/v0.2.3) - -## Democracy Proposal - -Steps: - -1. In the wallet go to the - [Democracy](https://wallet.xx.network/#/democracy) -2. Click the “Submit proposal†button - - - -3. Fill in the preimage hash with the system.setCode hash from the - previous steps -4. Click "Submit proposal" and then on the next screen sign and submit - the transaction - -Now that the proposal is up, go to the xx Network community channels -([discord](https://discord.com/invite/Y8pCkbK) and -[telegram](https://t.me/xxnetwork)) and inform other members of the -community about the proposed code change. It is important that -information about the code change is included (references to github -release), since the actual code won’t be put on chain until the -referendum passes. - -Once the proposal becomes a referendum, anyone can vote for it. Voting -period is one week. - -## Verifying Code Changes - -While the referendum is ongoing, community members might wish to verify -that the proposer was truthful. - -Steps: - -1. Checkout the branch with the new runtime -2. Compile the binary (which compiles the runtime) -3. Use subwasm to get the system.setCode hash for the new runtime in - compact compressed format (see above for example) -4. Verify that the proposal preimage hash that is on-chain matches the - system.setCode hash output in the previous step - -## Uploading Code - -If the referendum passes, the enactment period is one week as well, -meaning the change is only performed one week after the referendum ends. -Before the end of this enactment period, the code changes must be -uploaded on chain, otherwise the enactment will fail. - -This can be done by anyone, without needing to reserve coins, since the -preimage is imminent. - -Steps: - -1. In the wallet go to the - [Democracy/Dispatch](https://wallet.xx.network/#/democracy/dispatch) -2. Click the “Image†button -3. Select â€system†and “setCode†from the dropdown menus and click on - the “file upload†toggle -4. Click on the code field (where it says “click to select …â€) which - opens your OS file explorer. Find the runtime file containing the - new code and open it -5. If the code is correct, the preimage hash matches what was approved - in the referendum (this was highlighted in red before the file was - selected). This makes it impossible to change the code to upload - after the referendum has been approved -6. Click the “Submit preimage†button -7. Review the information -:::note -Since the code change is a large file, the transaction - fees shown could be close to 100 xx. However, since this - referendum is imminent, the fee is refunded at the end of the - transaction processing. Still, the funds still need to be - available in the account to be able to submit the transaction -::: - - -8. Sign and submit the transaction -9. When the transaction is in a block it’s possible to see the - transaction fee being Withdraw and then Deposited back into the - account -10. In the democracy dispatch queue, now it’s possible to see the exact - proposal data instead of only the preimage diff --git a/website/static/img/Dropped Text.txt b/website/static/img/Dropped Text.txt deleted file mode 100644 index 7302e3bfd1fd0f4e8426f0d5bbf0514410451352..0000000000000000000000000000000000000000 --- a/website/static/img/Dropped Text.txt +++ /dev/null @@ -1 +0,0 @@ -Keith's DocuSign \ No newline at end of file