Skip to content

Commit

Permalink
Merge branch 'master' into status-badges/update
Browse files Browse the repository at this point in the history
  • Loading branch information
DrW3RK authored Jan 29, 2024
2 parents ec46d83 + a0ee98c commit a34bea7
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 21 deletions.
2 changes: 1 addition & 1 deletion docs/build/build-open-source.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ In the below sections, you can find a list of different layers of the Polkadot S
| Components | Existing projects | Potentially interesting projects |
| ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| Runtime/Parachain frameworks | [Polkadot Blockchain SDK](https://github.com/paritytech/polkadot-sdk) 🟢, [Gosemble](https://github.com/LimeChain/gosemble) ⚪, [Subsembly](https://github.com/LimeChain/subsembly) ⚪, [Parachain utilities](https://github.com/AcalaNetwork/parachain-utilities) ⚪, [Gantree](https://github.com/gantree-io/gantree-core) ⚪, [Cryptex](https://github.com/ideal-lab5) 🟢| Tools to create parachains with other frameworks, like the [Cosmos SDK](https://github.com/cosmos/cosmos-sdk)<!-- NO_STATUS_BADGE --> or [Polygon CDK](https://github.com/0xPolygon/cdk-validium-node)<!-- NO_STATUS_BADGE --> |
| Client Libraries | [Polkadot API - Typescript](https://github.com/paritytech/polkadot-api) 🟢, [Capi - Typescript](https://github.com/paritytech/capi) ⚪, [sub-api](https://github.com/kodadot/packages/tree/main/sub-api) 🟢, [Go](https://github.com/centrifuge/go-substrate-rpc-client) 🟡, [.Net](https://github.com/usetech-llc/polkadot_api_dotnet) ⚪, [.NET Standard 2.0](https://github.com/ajuna-network/Ajuna.NetApi) 🟢, [Substrate .NET Toolchain](https://github.com/SubstrateGaming/Substrate.NET.Toolchain) 🟢, [C++](https://github.com/usetech-llc/polkadot_api_cpp) ⚪, [C](https://github.com/finoabanking/substrate-c-tool) ⚪, [Haskell](https://github.com/airalab/hs-web3) ⚪, [Javascript](https://github.com/polkadot-js/api) 🟢, [Substrate API Sidecar - TypeScript](https://github.com/paritytech/substrate-api-sidecar) 🟢, [Python](https://github.com/polkascan/py-substrate-interface) 🟢, [Java (+ Android)](https://github.com/emeraldpay/polkaj) ⚪, [Substrate Client Java](https://github.com/strategyobject/substrate-client-java) ⚪, [Rust SCS](https://github.com/scs/substrate-api-client) 🟡, [Rust Parity (subxt)](https://github.com/paritytech/subxt) 🟢, [Rust pdotc](https://github.com/trevor-crypto) [PHP (gmajor-encrypt)](https://github.com/gmajor-encrypt/php-substrate-api) ⚪, [PHP (neha0921)](https://github.com/neha0921/substrate-interface-package) ⚪, [RPC-Ethereum](https://github.com/paritytech/frontier) 🟢, [Swift](https://github.com/tesseract-one/Substrate.swift) 🟡, [Kotlin](https://github.com/NodleCode/substrate-client-kotlin) ⚪, [substrate-client-kotlin](https://github.com/sublabdev/substrate-client-kotlin) ⚪, [substrate-client-swift](https://github.com/sublabdev/substrate-client-swift) ⚪, [Dart](https://github.com/rankanizer/polkadart) 🟢, [Substrate Core Polywrapper](https://github.com/polywrap/integrations) ⚪, [Substrate SDK iOS](https://github.com/novasamatech/substrate-sdk-ios) 🟢, [Substrate SDK Android](https://github.com/novasamatech/substrate-sdk-android) 🟢| |
| Client Libraries | [Polkadot API - Typescript](https://github.com/paritytech/polkadot-api) 🟢, [Capi - Typescript](https://github.com/paritytech/capi) ⚪, [sub-api](https://github.com/kodadot/packages/tree/main/sub-api) 🟢, [Go](https://github.com/centrifuge/go-substrate-rpc-client) 🟡, [.Net](https://github.com/usetech-llc/polkadot_api_dotnet) ⚪, [.NET Standard 2.0](https://github.com/ajuna-network/Ajuna.NetApi) 🟢, [Substrate .NET Toolchain](https://github.com/SubstrateGaming/Substrate.NET.Toolchain) 🟢, [C++](https://github.com/usetech-llc/polkadot_api_cpp) ⚪, [C](https://github.com/finoabanking/substrate-c-tool) ⚪, [Haskell](https://github.com/airalab/hs-web3) ⚪, [Javascript](https://github.com/polkadot-js/api) 🟢, [Substrate API Sidecar - TypeScript](https://github.com/paritytech/substrate-api-sidecar) 🟢, [Python](https://github.com/polkascan/py-substrate-interface) 🟢, [Java (+ Android)](https://github.com/emeraldpay/polkaj) ⚪, [Substrate Client Java](https://github.com/strategyobject/substrate-client-java) ⚪, [Rust SCS](https://github.com/scs/substrate-api-client) 🟡, [Rust Parity (subxt)](https://github.com/paritytech/subxt) 🟢, [Rust pdotc](https://github.com/trevor-crypto) [PHP (gmajor-encrypt)](https://github.com/gmajor-encrypt/php-substrate-api) ⚪, [PHP (neha0921)](https://github.com/neha0921/substrate-interface-package) ⚪, [RPC-Ethereum](https://github.com/paritytech/frontier) 🟢, [Swift](https://github.com/tesseract-one/Substrate.swift) 🟡, [Kotlin](https://github.com/NodleCode/substrate-client-kotlin) ⚪, [substrate-client-kotlin](https://github.com/sublabdev/substrate-client-kotlin) ⚪, [substrate-client-swift](https://github.com/sublabdev/substrate-client-swift) ⚪, [Dart](https://github.com/rankanizer/polkadart) 🟢, [Substrate Core Polywrapper](https://github.com/polywrap/integrations) ⚪, [Substrate SDK iOS](https://github.com/novasamatech/substrate-sdk-ios) 🟢, [Substrate SDK Android](https://github.com/novasamatech/substrate-sdk-android) 🟢, [DelightfulDot](https://github.com/CoongCrafts/delightfuldot) 🟢| |
| RPC Gateway | [Subway](https://github.com/AcalaNetwork/subway) 🟡| |
| Substrate Contract clients | [PatractGo](https://github.com/patractlabs/go-patract)| |
| Easy Runtime Development | [Subalfred](https://github.com/hack-ink/subalfred) 🟢, [substrate-stencil](https://github.com/kaichaosun/substrate-stencil) ⚪, [Play Substrate](https://github.com/kaichaosun/play-substrate) 🟡, [substrate-node-template](https://github.com/substrate-developer-hub/substrate-node-template) ⚪, [Substrate Playground](https://github.com/paritytech/substrate-playground) 🟡, [AssemblyScript Runtime Generation](https://github.com/LimeChain/as-substrate-runtime) ⚪, [Substrate Package Manager](https://github.com/clearloop/sup) ⚪, [Subsembly: Framework for developing AssemblyScript Substrate Runtimes](https://github.com/LimeChain/subsembly) ⚪, [dependency diener](https://github.com/bkchr/diener)| |
Expand Down
8 changes: 4 additions & 4 deletions docs/general/thousand-validators.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ slug: ../thousand-validators

:::warning 1KV Program is on Hold. Please check this space again in Feb 2024.

Starting in February 2024, Web3 Foundation plans to share a new application form for
validators that will include a KYC and KYB process. Until then, all applications submitted will
be on hold. The 1KV program is undergoing a significant redesign, and the plan is to make it more
attractive to participate in, contributing to further decentralization of the Polkadot network (see
Starting in February 2024, Web3 Foundation plans to share a new application form for validators that
will include a KYC and KYB process. Until then, all applications submitted will be on hold. The 1KV
program is undergoing a significant redesign, and the plan is to make it more attractive to
participate in, contributing to further decentralization of the Polkadot network (see
[Nakamoto coefficients](https://nakaflow.io/)).

If you have any questions, please contact `[email protected]`
Expand Down
48 changes: 32 additions & 16 deletions docs/learn/learn-comparisons-cosmos.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,14 @@ when they are finalized by Polkadot's Relay Chain, the main chain of the system.
parachains share state with the entire system, meaning that a chain re-organization of a single
parachain would require a re-organization of all parachains and the Relay Chain.

Cosmos employs horizontal scalability using [app-chains](https://www.alchemy.com/overviews/what-is-an-appchain). The Cosmos Network consists of 100+ IBC connected chains, including the Cosmos Hub, Osmosis, Celestia, dYdX v4 chain, Injective, etc. Each chain is responsible for securing the chain with a sufficiently staked and
decentralized validator set. But chains also have the option to leverage shared security from the Cosmos Hub. Cosmos chains send cross-chain messages using the Inter-Blockchain Communication protocol. As chains do not share state, a re-organization
of one chain would not re-organize other chains, meaning each message is trust-bound by the
recipient's trust in the security of the sender.
Cosmos employs horizontal scalability using
[app-chains](https://www.alchemy.com/overviews/what-is-an-appchain). The Cosmos Network consists of
100+ IBC connected chains, including the Cosmos Hub, Osmosis, Celestia, dYdX v4 chain, Injective,
etc. Each chain is responsible for securing the chain with a sufficiently staked and decentralized
validator set. But chains also have the option to leverage shared security from the Cosmos Hub.
Cosmos chains send cross-chain messages using the Inter-Blockchain Communication protocol. As chains
do not share state, a re-organization of one chain would not re-organize other chains, meaning each
message is trust-bound by the recipient's trust in the security of the sender.

## Architecture

Expand All @@ -52,9 +56,15 @@ Polkadot has [bridge parachains](learn-bridges.md) that offer two-way compatibil

### Cosmos

Cosmos is a network of blockchains built using [CometBFT](https://cometbft.com/) as the consensus engine, [Cosmos SDK](https://docs.cosmos.network/) as the VM, and [IBC](https://ibcprotocol.dev/) which allows chains to interoperate with one another.
Cosmos is a network of blockchains built using [CometBFT](https://cometbft.com/) as the consensus
engine, [Cosmos SDK](https://docs.cosmos.network/) as the VM, and [IBC](https://ibcprotocol.dev/)
which allows chains to interoperate with one another.

IBC leverages light clients that can keep track of the consensus of a counterparty chain. For example, when chains A and B want to talk to one another, chain A uses its light client of B to verify messages sent from chain B, and vice versa. IBC is [currently live](https://app.trustless.zone/?from=POLKADOT&to=OSMOSIS) on Polkadot and Kusama. Work is ongoing to implement IBC to Ethereum and it's layer 2s.
IBC leverages light clients that can keep track of the consensus of a counterparty chain. For
example, when chains A and B want to talk to one another, chain A uses its light client of B to
verify messages sent from chain B, and vice versa. IBC is
[currently live](https://app.trustless.zone/?from=POLKADOT&to=OSMOSIS) on Polkadot and Kusama. Work
is ongoing to implement IBC to Ethereum and it's layer 2s.

## Consensus

Expand All @@ -75,10 +85,10 @@ Second, having the capacity to extend the chain with unfinalized blocks allows o
perform extensive availability and validity checks to ensure that no invalid state transitions make
their way into the final chain.

Cosmos chains use Tendermint consensus, a round-robin protocol that provides
instant finality. Block production and finalization are on the same path of the algorithm, meaning
it produces and finalizes one block at a time. Because it is a PBFT-based algorithm (like GRANDPA),
it has quadratic transport complexity, but can only finalize one block at a time.
Cosmos chains use Tendermint consensus, a round-robin protocol that provides instant finality. Block
production and finalization are on the same path of the algorithm, meaning it produces and finalizes
one block at a time. Because it is a PBFT-based algorithm (like GRANDPA), it has quadratic transport
complexity, but can only finalize one block at a time.

## Staking Mechanics

Expand Down Expand Up @@ -124,8 +134,13 @@ Polkadot has an additional protocol called [SPREE](learn-spree.md) that provides
cross-chain messages. Messages sent with SPREE carry additional guarantees about provenance and
interpretation by the receiving chain.

Cosmos uses a light client-based cross-chain protocol called [Inter-Blockchain Communication (IBC)](https://www.ibcprotocol.dev/) for arbitrary message-passing. In the current design, IBC chains create 1:1 [Connections](https://ibc.cosmos.network/main/ibc/overview#connections) with each other, over which [Channels](https://ibc.cosmos.network/main/ibc/overview#channels) can be established. IBC data packets are sent between application modules on different chains over these channels. In the case of IBC, as chains do not share state, receiving
chains must trust the security of a message's origin.
Cosmos uses a light client-based cross-chain protocol called
[Inter-Blockchain Communication (IBC)](https://www.ibcprotocol.dev/) for arbitrary message-passing.
In the current design, IBC chains create 1:1
[Connections](https://ibc.cosmos.network/main/ibc/overview#connections) with each other, over which
[Channels](https://ibc.cosmos.network/main/ibc/overview#channels) can be established. IBC data
packets are sent between application modules on different chains over these channels. In the case of
IBC, as chains do not share state, receiving chains must trust the security of a message's origin.

## Governance

Expand Down Expand Up @@ -188,7 +203,8 @@ security must be cooperative, not competitive. Therefore, Polkadot provides the
logic and security processes across chains so that they can interact knowing that their
interlocutors execute within the same security context.

The Cosmos network uses an Internet-like unstructured network that uses IBC to connect chains with independent security guarantees,
meaning that when data is sent from one chain to another, the receiving
chain must trust the sending chain. Thus, each blockchain in the Cosmos network has its independent
security mechanisms. Chains also have the option to share security with the Cosmos Hub and thereby leverage its economic security.
The Cosmos network uses an Internet-like unstructured network that uses IBC to connect chains with
independent security guarantees, meaning that when data is sent from one chain to another, the
receiving chain must trust the sending chain. Thus, each blockchain in the Cosmos network has its
independent security mechanisms. Chains also have the option to share security with the Cosmos Hub
and thereby leverage its economic security.

0 comments on commit a34bea7

Please sign in to comment.