Skip to content

Commit

Permalink
Update wording
Browse files Browse the repository at this point in the history
  • Loading branch information
dankelleher committed Mar 20, 2024
1 parent 3f0342b commit 909d887
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 77 deletions.
47 changes: 20 additions & 27 deletions docs/details.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,60 +7,53 @@ sidebar_label: Details
# The Details

## A Deep Dive into the Staking Process
Let’s take a deep dive into what happens when you deposit your SOL with Sunrise Stake
Let’s take a closer look at the SOL-gSOL wrapping process.

## Step 1: Depositing SOL with Sunrise Stake
## Step 1: Wrapping SOL into green SOL (gSOL)

![staking_white_without_comments.png](/img/staking_white_without_comments.png)

The staking process begins with you depositing your SOL via Sunrise Stake’s app.
The process begins when you wrap your SOL into green SOL via the Sunrise Stake smart contract.

Your SOL will be deposited into the underlying pools.
Your SOL will be staked in the underlying third-party pools.

The majority of the SOL is deposited into a set of [Stake Pools](https://solana.org/stake-pools).
At present, Sunrise Stake deposits into the [Marinade Finance](https://docs.marinade.finance/) and [SolBlaze](https://stake-docs.solblaze.org/) pools.
The stake pool tokens (mSOL and bSOL) will be held by the protocol in a [Program Derived Address (PDA)](https://docs.solana.com/developing/programming-model/calling-between-programs#program-derived-addresses).
The majority of the SOL is automatically routed into a set of [Stake Pools](https://solana.org/stake-pools).
At present, Sunrise Stake routes into the [Marinade Finance](https://docs.marinade.finance/) and [SolBlaze](https://stake-docs.solblaze.org/) pools.

A proportion of the deposited SOL is also deposited into the [Marinade Unstake Pool](https://docs.marinade.finance/marinade-protocol/system-overview/unstake-liquidity-pool).
This pool is used during the unstaking process to provide fee-less unstaking, ensuring that users can withdraw their SOL at any time without incurring a fee.

When you deposit your SOL, you will receive an equivalent amount of gSOL in your wallet.
gSOL can be used in the same way as SOL, by protocols or recipients that support it.
A proportion of the SOL is also routed into the [Marinade Unstake Pool](https://docs.marinade.finance/marinade-protocol/system-overview/unstake-liquidity-pool). This pool is used during the unstaking process to provide fee-less unstaking, ensuring that users can unwrap their gSOL back to SOL at any time without incurring a fee.
When you wrap your SOL, you will receive an equivalent amount of gSOL in your wallet. gSOL can be used in the same way as SOL, by supporting protocols and recipients.

## Step 2: Accruing yield

![accruing_yield_white.png](/img/accruing_yield_white.png)

### Stake Pools

At the end of each epoch (every 2 or 3 days), yield gets paid out into stake accounts,
and the value of the overall stake pool increases.
At the end of each epoch (every 2 or 3 days), yield gets paid out into stake accounts, and the value of the overall stake pool increases.

As mSOL and bSOL represent a share of their respective stake pools, the value of mSOL and bSOL also increases.

The yield accrued on the staked SOL is equal to the value of mSOL and bSOL held by Sunrise
minus the value of SOL staked (calculated as the circulating supply of gSOL).
The yield accrued on your staked SOL is equal to the value of mSOL and bSOL minus the value of SOL staked (calculated as the circulating supply of gSOL).

### Liquidity Pool

The Marinade Unstake Pool also accrues yield through fees from the marinade liquid unstaking feature.
The total value of the holdings of the Sunrise protocol are therefore:
The Marinade Unstake Pool also accrues yield through fees from the Marinade liquid unstaking feature. The total value of holdings are therefore:

- The value of mSOL and bSOL
- The value of the liquidity pool tokens

- The value of mSOL and bSOL held by Sunrise
- The value of the liquidity pool tokens held by Sunrise

## Step 3: Unstaking
## Step 3: Unwrapping green SOL back to SOL

![unstaking_white_without_comments.png](/img/unstaking_white_without_comments.png)

If you unstake your SOL, Sunrise calculates how much of its share of the underlying stake and liquidity pools to sell, in order to receive your SOL.
If you want to unwrap your green SOL (gSOL) to SOL, Sunrise calculates how much of its share of the underlying stake and liquidity pools to swap in order to receive your SOL.

Unwrapping draws from the liquidity pool balance first, and then from the stake pool as needed.

Unstaking draws from the liquidity pool balance first, and then from the stake pool as needed.
For example, if you decide to unwrap 100 green SOL back to 100 SOL, and the value of the liquidity pool tokens are currently at 90, you will withdraw 90 from the liquidity pool, and the remaining 10 from the stake pool.

For example, if you decide to unstake 100 SOL, and the value of the Sunrise-held liquidity pool tokens are currently at 90,
Sunrise will withdraw 90 from the liquidity pool, and the remaining 10 from the stake pool.
Sunrise will also trigger a "rebalancing" transaction that moves SOL from the stake pool into the liquidity pool, in order to maintain a 10% liquidity pool balance.

Sunrise will also trigger a "rebalancing" transaction, that moves SOL from the stake pool into the liquidity pool,
in order to maintain a 10% liquidity pool balance.

![rebalancing_white.png](/img/rebalancing_white.png)
76 changes: 35 additions & 41 deletions docs/home.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,98 +9,92 @@ sidebar_class_name: green

:::caution

The Sunrise Stake protocol is currently in development. Use at own risk
The Sunrise Stake protocol is currently in development. Use at your own risk and always do your own research.
:::

## The Basics

### What is Sunrise Stake?

Sunrise Stake is a ReFi staking protocol that directs staking yield to climate-positive projects.
Sunrise Stake is a Regenerative Finance (ReFi) smart contract that helps you donate your staking yield towards climate-positive action.

At Sunrise Stake we believe in the power of Regenerative Finance to create positive outcomes for people and the planet.
So we’ve created a non-custodial and permissionless protocol to send the yield earned through staking SOL towards retiring carbon tokens and other climate-positive projects.
Sunrise Stake is one of the first ReFi projects on the Solana blockchain; we provide a seamless way for holders of SOL to participate in the ReFi movement, while simultaneously strengthening the Solana blockchain.
At Sunrise Stake we believe in the power of ReFi to create positive outcomes for people and the planet. We’ve created a non-custodial and permissionless protocol to direct the yield earned through staking SOL towards retiring carbon tokens and supporting climate-positive projects. Sunrise Stake is one of the pioneering ReFi initiatives within the Solana ecosystem; we provide a seamless way for SOL holders to participate in the ReFi movement, while simultaneously strengthening the Solana blockchain.

![high_level_white.png](/img/high_level_white.png)

### What is ReFi?

Regenerative Finance, or ReFi, is the union of web3 decentralised finance with regenerative economics.
Regenerative Finance, or ReFi, is the union of Web3 Decentralised Finance with regenerative economics.

Regenerative economics is a theoretical framework for understanding and guiding economic activity that is focused on creating positive social and ecological outcomes.

This approach to economics emphasizes the importance of building and maintaining healthy ecosystems and communities, and views economic activity as a means to that end rather than an end in itself.
This approach to economics emphasises the importance of building and maintaining healthy ecosystems and communities, and views economic activity as a means to that end rather than an end in itself.

### Why stake with Sunrise Stake?

#### Supporting carbon offset projects comes at no cost

Users deposit their SOL with Sunrise Stake and receive gSOL (green SOL) in return as a wrapped token representing the total amount staked.
gSOL is a synthetic derivative of SOL, and can be used in the same way as SOL, by protocols or recipients that support it.
For example, if you are asked to pay a recipient in SOL, you can pay them in gSOL instead. The recipient can then choose to either keep the gSOL, or unstake it and receive SOL.
The gSOL to SOL ratio is always 1:1 thus stakers experience no fund loss in the process. Additionally, gSOL is a fully fungible token - stakers can continue to trade it, leaving their SOL to earn rewards for nature-based projects!
Sunrise Stake is a volunteer-driven project and charges no fees; 100% of your staking rewards are donated to offset carbon. As only the staking yield is being used, offsetting carbon comes at no cost to you.

Users swap their SOL via Sunrise Stake and receive gSOL (green SOL) in return as a wrapped token representing the total amount staked. gSOL is a synthetic derivative of SOL, and can be used in the same way as SOL by protocols or recipients that support it.
The recipient can then choose to either keep the gSOL, or unwrap back to SOL. The gSOL to SOL ratio is always 1:1 thus stakers experience no fund loss in the process. Additionally, gSOL is a fully fungible token - stakers can continue to use it, leaving their SOL to earn rewards for nature-based projects!

The ReFi ecosystem, just like any climate movement, necessitates infrastructure growth to achieve its ambitious regenerative goals. Sunrise Stake plays its part by being a layer bringing carbon tokenomics to users wanting to make a positive impact on the planet. Sunrise does not own or hold users’ SOL.

#### Feeless Liquid Unstaking

Liquid staking is a method of staking that allows stakers to unstake without the typical 2-3 day withdrawal period.
Sunrise proxies the [Marinade Finance](https://docs.marinade.finance/) and [SolBlaze](https://stake-docs.solblaze.org/) protocols,
which allow liquid staking through the use of liquidity pools.
Sunrise proxies the [Marinade Finance](https://docs.marinade.finance/) and [SolBlaze](https://stake-docs.solblaze.org/), which allow liquid staking through the use of liquidity pools.

In Sunrise, unlike the underlying stake pools, users may withdraw their SOL instantly with no fee,
beyond the Solana network fee of 5000 lamports (< $0.01), up to a limit,
after which the underlying stake pool fee is incurred.
In Sunrise, unlike the underlying stake pools, users may unstake their SOL instantly with no fee, except for the inherent Solana network fee of 5000 lamports (< $0.01), up to a limit, after which the underlying stake pool fee is incurred.

To achieve feeless unstaking, a portion of the invested SOL is invested in the
[Marinade Unstake Pool](https://docs.marinade.finance/marinade-protocol/system-overview/unstake-liquidity-pool).
To achieve feeless unstaking, the Sunrise smart contract also proxies the [Marinade Unstake Pool](https://docs.marinade.finance/marinade-protocol/system-overview/unstake-liquidity-pool).

This pool is free from [Impermanent Loss](https://www.solana.news/post/cryptonomics-what-is-impermanent-loss) risk,
and has zero withdrawal fees.
This pool is free from [Impermanent Loss](https://www.solana.news/post/cryptonomics-what-is-impermanent-loss) risk, and, under normal operating conditions, has zero withdrawal fees.

Alternatively, users may withdraw with no limit with a delay of 2-3 days. This option is preferable for users
who do not need their funds immediately, as it avoids spending some of the earned yield on the stake pool fee,
and therefore maximizes the amount of yield that is sent to the climate-positive projects.
Alternatively, users may unstake with no limit with a delay of 2-3 days.
This option is preferable for users who do not need their funds immediately,
as it avoids spending some of the earned yield on the stake pool fee,
and therefore maximises the amount of yield that is sent to the climate-positive projects.
This option may also be used in cases where the Marinade Unstake Pool has insufficient liquidity
to meet the unstake requirement.

#### Strengthening the Solana Ecosystem
Our protocol also secures and decentralizes the Solana blockchain; staking your SOL with liquid staking protocols such as Marinade Finance and Solblaze means that your SOL is distributed to a wider network of validators. A more detailed explanation on staking and validators can be found in [Solana's docs](https://solana.com/staking).

Our protocol also secures and decentralises the Solana blockchain;
staking your SOL with third-party liquid staking protocols such as Marinade Finance and SolBlaze means that your SOL
is distributed to a wider network of validators. A more detailed explanation on staking and validators can be found in [Solana's docs](https://solana.com/staking).

#### The longer the staking, the higher the reward
Keeping your SOL staked in Sunrise as long as possible maximises the climate-positive impact of your SOL, as well as the security of the Solana blockchain.
This is because the longer you stake your SOL, the more yield it will accrue, thus increasing the funds directed towards climate-positive causes.

Unlike staking protocols, where profit is only realised upon unstaking, the Sunrise protocol constantly "rebases"
the gSOL token, with respect to the underlying assets.:
Keeping your SOL staked via the proxy protocols as long as possible maximises the climate-positive impact of your SOL, as well as the security of the Solana blockchain. This is because the longer you stake your SOL, the more yield it will accrue, thus increasing the funds directed towards climate-positive causes.

Unlike staking protocols, where reward is only realised upon unstaking, the Sunrise protocol constantly "rebases" the gSOL token, with respect to the underlying assets:
- Stake rewards are paid into the stake pools
- The value of the pool tokens held by Sunrise increases
- The value of the pool tokens of the stake pools increases
- The value of the issued gSOL remains the same
- Once per epoch, the difference between the gSOL value and the underlying pool value is extracted as yield and sent to climate-positive projects.

This way stakers have the possibility to passively invest
in climate projects while retaining the ability to unstake their SOL at any point.
This way, stakers have the possibility to passively offset their carbon emissions via climate projects while retaining the ability to redeem 100% of their SOL at any point.

### What are carbon tokens?

Carbon tokens serve a similar purpose as carbon credits by allowing
individuals and institutions to offset their carbon emissions.

Sunrise uses the [Toucan NCT Carbon Token](https://blog.toucan.earth/announcing-nct-nature-carbon-tonne/), with more carbon tokens coming online in Q3 2023.

Each token represents 1 tonne of CO2 equivalent, Burning a token permanently retires the underlying carbon credit.
Carbon tokens serve a similar purpose as carbon credits by allowing individuals and institutions to offset their carbon emissions.
Sunrise's permissionless smart contract directs donated yield to two separate issuers of carbon credits: [Toucan NCT Carbon Token](https://blog.toucan.earth/announcing-nct-nature-carbon-tonne/) and [EcoToken](https://ecotoken.earth/).
Toucan's NCT token represents 1 tonne of CO2 equivalent. Burning the token represents retiring the underlying carbon credit. NCT is traded on the Polygon and Celo blockchains, and Sunrise has developed an open-source and permissionless Offset Bridge to allow yield on Solana stake pools to be used to buy and retire NCT.

Sunrise is focusing on carbon offsetting at present, however, in future we plan to support a range of climate-positive projects,
including ones with more direct climate impact, such as reforestation projects.
EcoToken bridges carbon credits issued on the [Regen Network](https://www.regen.network/) to Solana, allowing Solana smart contracts to natively and permissionlessly offset carbon on-chain.

### How to Stake?
Depositing your SOL via Sunrise Stake takes only a few clicks:
Staking via Sunrise Stake takes only a few clicks:

![stake.png](/img/screenshots/mini/stake.png)

1. Visit [the app](https://app.sunrisestake.com/) and connect your wallet.
2. Select the amount of SOL you want to stake.
3. Click "Stake" and confirm the transaction.

The SOL will be locked in the smart contract until you unstake. You will receive the equivalent amount of gSOL, which you can either keep and unstake in the future, or trade with platforms that support it.
The SOL will be wrapped into an equivalent amount of gSOL by the smart contract until you swap back. You will receive the equivalent amount of gSOL, which you can either keep and unwrap back to SOL in the future, or use with platforms that support it.

### How to Unstake?

Expand Down
20 changes: 11 additions & 9 deletions docs/spending.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ sidebar_label: Spending Yield

# Spending Yield

The yield earned by the Sunrise Stake platform is spent on climate-positive projects.
The yield earned by the third-party Stake Pools is spent on climate-positive projects.

The system that controls the spending of yield is called the [Yield Controller](https://github.com/sunrise-stake/yield-controller).

The Yield Controller is responsible for:
Expand All @@ -18,13 +19,14 @@ The Yield Controller is responsible for:

## 1. Yield transfer to the yield account

The yield earned from staking SOL is transferred to the [__yield account__](https://solscan.io/account/6HQrvpMJFqMj35JqMReyhnUrRXNucAAB6FywdDu7xPKA).
The yield you earn by staking SOL is transferred to the [__yield account__](https://solscan.io/account/6HQrvpMJFqMj35JqMReyhnUrRXNucAAB6FywdDu7xPKA).

It is a Program Derived Address ([PDA](https://docs.solana.com/developing/programming-model/calling-between-programs#program-derived-addresses))
meaning that it is owned and controlled by a smart contract (the yield controller), not a private key.
meaning that it is owned and controlled by a smart contract (the yield controller), not a private key nor anyone behind Sunrise Stake.

The yield account is specified in the [state](https://solana.fm/address/43m66crxGfXSJpmx5wXRoFuHubhHA1GCvtHgmHW6cM1P/anchor-account) of the Sunrise program.

The yield account is specified in the [state](https://solana.fm/address/43m66crxGfXSJpmx5wXRoFuHubhHA1GCvtHgmHW6cM1P/anchor-account)
of the Sunrise program (labelled 'treasury'). The permissionless `extract_yield` instruction transfers any accrued yield to this account.
The permissionless `extract_yield` instruction transfers any accrued yield to this account.

## 2. Splitting to targets

Expand All @@ -41,7 +43,7 @@ Each input account is a PDA owned by a given target program.

### 3.1 Toucan Nature Carbon Tonne

Sunrise Stake currently spends its yield by buying and retiring the Toucan Nature Carbon Tonne (NCT) token.
Sunrise Stake currently donates your yield by buying and retiring the Toucan Nature Carbon Tonne (NCT) token.

NCT represents a tonne of CO2 or equivalent greenhouse gas removed from the atmosphere in various nature-based projects.
It is issued on the Polygon and Celo blockchains.
Expand Down Expand Up @@ -91,7 +93,7 @@ More details for the Offset Bridge can be found at https://github.com/sunrise-st

### 3.2 ecoToken

Starting in Q4 2023, Sunrise Stake will also be sending a portion of its funds to [ecoToken](https://eco-token.io/),
a Solana-native project that issues a variety of eco-credits.
A portion of your donated staking rewards is also sent to [ecoToken](https://eco-token.io/), a Solana-native project that issues a variety of eco-credits.

ecoToken bridges carbon credits from [Regen Network](https://www.regen.network/), which certifies and issues them.

ecoToken is linked with Regen Network, that certifies the credits.

0 comments on commit 909d887

Please sign in to comment.