Skip to content

Commit

Permalink
Grammar fixes (#5233)
Browse files Browse the repository at this point in the history
* grammar check crowdloan page

* added explanation gov1

* minor addition
  • Loading branch information
filippoweb3 authored Sep 26, 2023
1 parent 2fcc2d3 commit fcdc498
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 48 deletions.
91 changes: 44 additions & 47 deletions docs/learn/learn-crowdloans.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,11 @@ slug: ../learn-crowdloans
import RPC from "./../../components/RPC-Connection";

{{ polkadot: Polkadot :polkadot }}{{ kusama: Kusama :kusama }} allows parachains to source tokens
for their parachain bids in a decentralised crowdloan.
for their parachain bids in a decentralized crowdloan.

:::note Contributing to a crowdloan

If you are here for guidance on how to contribute for a crowdloan, watch the video below or read
this
If you are here for guidance on how to contribute to a crowdloan, watch the video below or read this
[support article on crowdloans](https://support.polkadot.network/support/solutions/articles/65000177341-how-to-participate-in-crowdloans-on-polkadot-or-kusama).

:::
Expand All @@ -39,44 +38,43 @@ auctions, which allow the community to participate in a trustless and permission
Let's look at a scenario where Project A is hoping to gain a parachain slot on
{{ polkadot: Polkadot :polkadot }}{{ kusama: Kusama :kusama }}, but they don't have enough tokens to
bid directly to win the parachain auction. Project A could benefit from starting a new crowdloan
campaign to help secure a parachian slot. Crowdloans are trustless and are supported natively on
campaign to help secure a parachain slot. Crowdloans are trustless and are supported natively on
{{ polkadot: Polkadot :polkadot }}{{ kusama: Kusama :kusama }}, allowing the community to bond their
tokens on Project A's behalf for the entire parachain lease duration. This will allow Project A to
compete with projects that may have access to greater capital, given the project has sufficient
community support. In return, the community contributors are rewarded by the projects that win the
parachain slot, which would typically compensate for the opportunity cost of bonding their tokens
for the lease duration.
parachain slot, which would compensate for the opportunity cost of bonding their tokens for the
lease duration.

On the other hand, let's say Project B, which is more established and has access to capital, is
hoping to secure a parachain slot through self-funding. Project B is not relying on any community
funding (at least via the crowdloan mechanism), so they will have to determine how much funding they
can allocate towards winning a slot.
hoping to secure a parachain slot through self-funding. Project B is not relying on community
funding (at least via the crowdloan mechanism), so they must determine how much funding they can
allocate towards winning a slot.

Project B is in full control of how much they are ultimately willing to contribute towards their
goal of gaining a parachain slot. Project B need not work on coming up with a rewards model for
community contributors like Project A. In contrast, crowdloan campaigns are beneficial for projects
that have access to limited capital but have strong community support. They are also beneficial for
projects that are able to successfully bid to win the auction with self-funding, but are looking for
a mechanism to bootstrap their community and get noticed by the key actors in the ecosystem.
Project B fully controls how much they are willing to contribute to gaining a parachain slot.
Project B need not work on creating a reward model for community contributors like Project A. In
contrast, crowdloan campaigns benefit projects with access to limited capital but have strong
community support. They are also beneficial for projects that can successfully bid to win the
auction with self-funding but are looking for a mechanism to bootstrap their community and get
noticed by the key actors in the ecosystem.

It is publicly visible on-chain whether or not a project is bidding directly or through a crowdloan
campaign. More details regarding the process of creating and executing a crowdloan campaign are
provided below.
campaign. More details regarding creating and executing a crowdloan campaign are provided below.

## Starting a Crowdloan Campaign

Anyone who has registered a parachain can create a new crowdloan campaign for a slot by depositing a
specified number of tokens. A campaign is configured as a range of slots (i.e. the duration of the
[parachain](learn-parachains.md) will bid for), a cap, and a duration. The duration can last over
several auctions as long as the range of slots matches those of the auction (i.e. the first lease
period of the crowdloan is the same or bigger than that of the auction). This means that a team will
not need to restart the campaign just because they do not secure a slot on their first attempt.
period of the crowdloan is the same or bigger than that of the auction). This means a team will not
need to restart the campaign just because they do not secure a slot on their first attempt.

:::info Crowdloan Submission Deposit Required

In order to create a new crowdloan campaign, your account must have
To create a new crowdloan campaign, your account must have
{{ polkadot: 500 DOT :polkadot }}{{ kusama: 100 KSM :kusama }} transferrable which will be reserved
for the duration of the crowdloan
for the duration of the crowdloan.

:::

Expand All @@ -85,10 +83,9 @@ When setting the parameters of a crowdloan campaign, consider the following:
- A crowdloan campaign can start well before the auction slot is opened.
- The campaign creation form requires setting a crowdloan cap — the maximum amount a campaign
can collect. A team can still win an [auction](learn-auction.md) if the cap is not reached.
- Set the desired end of the crowdloan in the "Ending block" field. This helps to ensure that the
crowdloan is live during the entire duration of the auction. For example, if an auction starts in
three days and will last for five days, you may want to set your crowdloan to end in 10 days, or a
similar timescale.
- Set the desired end of the crowdloan in the "Ending block" field. This helps ensure that the
crowdloan is live during the entire auction. For example, if an auction starts in three days and
lasts five days, you should set your crowdloan to end in 10 days or a similar timescale.
- One way of calculating the ending block number is adding: `(10 * 60 * 24 * 7) * (x * 6) + y`

- `x` is the number of auction periods you want the crowdloan to continue for
Expand All @@ -102,10 +99,10 @@ When setting the parameters of a crowdloan campaign, consider the following:
- You can only cancel an ongoing crowdloan if no contributions have been made. Your deposit will
be returned to you.

Prior to the start of the crowdloan campaign, the owner will upload the parachain data. Once the
Before the start of the crowdloan campaign, the owner will upload the parachain data. Once the
crowdloan is live, **the parachain configuration will be locked** and will be deployed as the
parachain's runtime. Of course, once the parachain is running it can always change via runtime
upgrades (as determined through its own local governance).
parachain's runtime. Of course, once the parachain is running, it can always change via runtime
upgrades (as determined through its local governance).

## Supporting a Crowdloan Campaign

Expand All @@ -116,21 +113,21 @@ upgrades (as determined through its own local governance).
The minimum balance for contributions for a crowdloan campaign is currently set to
{{ polkadot: <RPC network="polkadot" path="consts.crowdloan.minContribution" defaultValue={50000000000} filter="humanReadable"/>. :polkadot }}
{{ kusama: <RPC network="kusama" path="consts.crowdloan.minContribution" defaultValue={100000000000} filter="humanReadable"/>. :kusama }}
This is in an attempt to make crowdloans as accessible as possible while maintaining a balance to
justify the use of the network's resources.
This is to make crowdloans as accessible as possible while maintaining a balance to justify using
the network's resources.

:::

Each created campaign will have an index. Once a crowdloan campaign is open, anyone can participate
by sending a special transaction that references the campaign's index. Tokens used to participate
must be transferable &mdash; that is, not locked for any reason, including staking, vesting, and
governance &mdash; because they will be moved into a module-controlled account that was generated
uniquely for this campaign. See [system accounts](./learn-account-advanced.md#system-accounts) for
more information.
by sending a transaction referencing the campaign's index. Tokens used to participate must be
transferable &mdash; that is, not locked for any reason, including staking, vesting, and governance
&mdash; because they will be moved into a module-controlled account that was generated uniquely for
this campaign. See [system accounts](./learn-account-advanced.md#system-accounts) for more
information.

:::caution Do not send Crowdloan contributions directly to the Parachain address

All crowdloan contributions are handled by the Crowdloan module’s logic where a campaign is
All crowdloan contributions are handled by the Crowdloan module’s logic, where a campaign is
identified by an index, not by address. **Never transfer tokens to an address in support of a
campaign**.

Expand All @@ -148,31 +145,31 @@ active.

Participants will be able to reclaim their tokens in one of two ways:

- If the campaign was successful, then the parachain will enter a retirement phase at the end of its
lease. During this phase, participants can withdraw the tokens with which they participated.
- If the campaign was unsuccessful, then this retirement phase will begin at the campaign's
configured end, and participants can likewise withdraw their tokens.
- If the campaign succeeds, the parachain will enter a retirement phase at the end of its lease.
During this phase, participants can withdraw the tokens with which they participated.
- If the campaign is unsuccessful, this retirement phase will begin at its configured end, and
participants can likewise withdraw their tokens.

:::tip `crowdloan.contribute` extrinsic is trustless

Contributing to a crowdloan through Polkadot JS Apps (which uses `crowdloan.contribute` extrinsic)
guarantees that you receive your tokens after the campaign ends. If you intend to make contributions
through other websites and custodial service providers like central exchanges, review their terms
and conditions thoroughly and assess the risks associated.
guarantees that you receive your tokens after the campaign ends. If you intend to contribute through
other websites and custodial service providers like central exchanges, review their terms and
conditions thoroughly and assess the associated risks.

:::

Note: When the lease periods won by the crowdloan have finished, or the crowdloan has ended without
winning a slot, anyone can trigger the refund of crowdloan contributions back to their original
owners. This can be done through the permissionless `crowdloan.refund` extrinsic available on
Polkadot JS Apps > Developer > Extrinsics page, by specifying the parachain ID. This extrinsic may
need to be issued multiple times, if the list of contributors is too long. All contributions must be
returned before the crowdloan is entirely deleted from the system.
need to be issued multiple times if the list of contributors is too long. All contributions must be
returned before the crowdloan is entirely deleted.

![Crowdloan refund](../assets/crowdloan-refund.png)

Many projects will have dashboards available that allow users to participate in their crowdloans.
PolkadotJS apps also offers a breakdown of ongoing crowdloans on the
Many projects will have dashboards that allow users to participate in their crowdloans. PolkadotJS
apps also offer a breakdown of ongoing crowdloans on the
[Apps page](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Fkusama-rpc.polkadot.io#/parachains/crowdloan).

Here is an example of the crowdloans in play during the very first Kusama auction.
Expand Down
3 changes: 2 additions & 1 deletion docs/learn/learn-governance.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,8 @@ Referenda can be started in different ways:

- Publicly submitted proposals
- Proposals submitted by the council, either through a majority or unanimously
- Proposals submitted as part of the [enactment](#enactment) of a prior referendum
- Proposals submitted as part of the [enactment](#enactment) of a prior referendum (i.e. making a
referendum to start a new referendum)
- Emergency proposals submitted by the [Technical Committee](#technical-committee) and approved by
the [Council](#council)

Expand Down

0 comments on commit fcdc498

Please sign in to comment.