Skip to content

Commit

Permalink
Suggested changes for documentation after prod deployment (neonevm#222)
Browse files Browse the repository at this point in the history
* Edits for entire docs after pass

* Fixing governance docs

Co-authored-by: Daniel Kashepava <[email protected]>
  • Loading branch information
ricky-gmstudio and daniel-gmstudio authored Nov 18, 2022
1 parent 45b1060 commit 0b519ed
Show file tree
Hide file tree
Showing 10 changed files with 44 additions and 47 deletions.
8 changes: 4 additions & 4 deletions docs/developing/integrate/oracles/integrating_chainlink.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@ title: Integrate Chainlink

## Introduction

Chainlink Data Feeds are the quickest way to connect your smart contracts to the real-world data such as asset prices. It supports Neon EVM and is implemented as a smart contract making Chainlink Data Feeds from Solana network available on Neon EVM. The repo is available on GitHub at [hoodieshq/chainlink-neon](https://github.com/hoodieshq/chainlink-neon).
[Chainlink Data Feeds](https://data.chain.link/) are the quickest way to connect your smart contracts to real-world data, such as asset prices. It supports Neon EVM and is implemented as a smart contract making Chainlink Data Feeds from Solana network available on Neon EVM. You can learn more from the [hoodieshq/chainlink-neon](https://github.com/hoodieshq/chainlink-neon) repo.

## How to Use

Once deployed, the contract implements [`AggregatorV3Interface`](https://docs.chain.link/docs/price-feeds-api-reference/#aggregatorv3interface) according to the best practices of the Chainlink Data Feeds
Once deployed, the contract implements [`AggregatorV3Interface`](https://docs.chain.link/docs/price-feeds-api-reference/#aggregatorv3interface) in accordance with the best practices of the Chainlink Data Feeds
usage. Follow the official Chainlink documentation to get the [latest](https://docs.chain.link/docs/get-the-latest-price/) or [historical](https://docs.chain.link/docs/historical-price-data/) prices from the data feeds.

Below is an example

```js

// Consuming data example using JavaScript

// Input is expected to be passed via ENV variables for the sake of brevity.
// Input is expected to be passed via environment variables for the sake of brevity
// `ORACLE_ADDRESS` – deployed address of the contract
// `ROUND` – identifier of the round.

Expand Down
2 changes: 1 addition & 1 deletion docs/developing/integrate/oracles/integrating_pyth.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ It is **strongly recommended** to follow the [consumer best practices](https://d
To consume prices, you need to look up the price feed ID for the token symbol you are interested in.
The Pyth Network website lists the NEON price feed IDs for [devnet](https://pyth.network/developers/price-feed-ids/#neon-evm-devnet) and [mainnet](https://pyth.network/developers/price-feed-ids/#neon-evm-mainnet).

```solidity
```javascript
// SPDX-License-Identifier: Apache-2.0
pragma solidity ^0.8.0;

Expand Down
2 changes: 1 addition & 1 deletion docs/faq/couldnt-find-answer.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: I couldn't find an answer to my issue
title: I couldn't find an answer to my question
---

I have a question about the Neon EVM that is not answered in the FAQ. What do I do?
Expand Down
37 changes: 19 additions & 18 deletions docs/governance/neon_daos/neon_daos.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ The Neon DAO model is based on the interplay and synergy of several decentralize

* An idea for potential implementation is brought to an Assembly within a Focus Area.
* Assembly participants discuss, review, and revise the proposed idea off-chain.
* If a prelimiary consensus has been reached, the idea is fleshed out and finalized into a proposal, which includes instructions to automatically implement the desired changes.
* The proposal is taken to a simple "Yes"/"No" vote, and eligible voters cast votes (in the form of NEON tokens) for their preferred option, with 1 NEON being equivalent to one vote.
* If a preliminary consensus has been reached, the idea is fleshed out and finalized into a proposal, which includes instructions to automatically implement the desired changes.
* The proposal is taken to a simple "Accept"/"Reject" vote, and eligible voters cast votes (in the form of NEON tokens) for their preferred option, with 1 NEON being equivalent to one vote.

## Focus Areas Overview

Expand All @@ -26,7 +26,7 @@ The Neon DAO consists of three (3) Focus Areas, each of which carries out functi

The following is a diagram visualizing the relationships between the Neon DAO's Focus Areas and their constituent Assemblies:

<div className='neon-img-box-600' style={{textAlign: 'center', width: 700, display: 'block', margin: 'auto'}}>
<div className='neon-img-box-600' style={{textAlign: 'center', width: 600, display: 'block', margin: 'auto'}}>

![](img/dao_organization.png)

Expand All @@ -38,35 +38,36 @@ The parameters pertaining to the Neon DAO governance framework may be adjusted a

The Ecosystem Focus Area is charged with the promotion of sustainable, long-term growth of the Neon ecosystem. As the collective owner of the Neon Treasury, its duties and responsibilties consist of distribution of funds for grants, security audits, bug bounties, and other ecosystem initiatives.

Within the Ecosystem Focus Area, the Ecosystem Assembly and Foundation work in collaboration to provide a frictionless experience for Ecosystem developers. The Ecosystem Assembly provides custodial services to the Foundation, informs Foundation on decisions taken and let's Foundation distribute funds based on its own legal assessment of counterparties.

A typical scenario, funding an ecosystem initiative, would have the proponent proceed as follows:
1. During the off-chain stage, the Assembly discusses and evaluates the proper incentives to provide for the initiative in question.
2. Create a proposal to
* Transfer the agreed-upon funds from the Neon Treasury to the one of Budget account
* Delegate an allocation of the part of Budget account to be used by the Foundation
3. The proposal is voted on and, if approved, leads to the transfer of funds to the Budget account.
Within the Ecosystem Focus Area, the Ecosystem Assembly and Foundation work in collaboration to provide a frictionless experience for Ecosystem developers. The Ecosystem Assembly provides custodial services to the Foundation, informs the Foundation on decisions taken, and lets the Foundation distribute funds based on its own legal assessment of potential grantees.

### Ecosystem Assembly

The Ecosystem Assembly is the most active Assembly in the Neon DAO. Most Ecosystem Assembly proposals deal with the matter of distributing tokens from one treasury account to another. The following are some examples:
* Evaluates and votes on proposals for funds distribution
* Informs Foundation on decisions taken and let's Foundation distribute funds based on its own legal assessment of counterparties
The Ecosystem Assembly is the most active Assembly in the Neon DAO. Most Ecosystem Assembly proposals deal with the matter of distributing tokens from one treasury account to another. The following are some examples:
* Evaluating and voting on proposals for distribution of funds
* Informing the Foundation on decisions taken, and letting the Foundation distribute funds based on its own legal assessment of potential grantees

#### Usage Scenarios
A typical scenario, funding an ecosystem initiative, would proceed as follows:
1. During the off-chain stage, the Assembly discusses and evaluates the proper incentives to provide for the initiative in question.
2. The proponent of the idea then creates a proposal to
* Transfer the agreed-upon funds from the Neon Treasury to one of the Budget accounts
* Delegate an allocation of part of the Budget account to be used by the Foundation
3. The proposal is voted on and, if approved, leads to the transfer of funds to the Budget account.

### Neon Foundation
The Neon Foundation is an organization that responsible for implementing Ecosystem Assembly proposals. These responsibilities include:
The Neon Foundation is an organization that is responsible for implementing Ecosystem Assembly proposals. These responsibilities include:
* Performing necessary Know-Your-Customer (KYC) and Anti-Money Laundering (AML) processes for contractors and grantees
* Signing agreements with contractors
* Process signed agreements with regards to acceptance and payments
* Processing signed agreements with regards to acceptance and payments

## Development
As the owner of the Neon EVM program, the Development Assembly is the only component of the Development Focus Area. This Assembly is the group that deals with the technical aspects of the Neon EVM, and can upgrade Neon EVM version. In break-glass emergency scenarios, Emergency Engineers, appointed by the Development Assembly, may elect to stop the Neon EVM without the Assembly's approval.
As the owner of the Neon EVM program, the Development Assembly is the only component of the Development Focus Area. This Assembly is the group that deals with the technical aspects of the Neon EVM, and can upgrade the Neon EVM version. In break-glass emergency scenarios, Emergency Engineers, appointed by the Development Assembly, may elect to stop the Neon EVM without the Assembly's approval.

### Development Assembly

The Development Assembly is responsible for overseeing upgrades to the Neon EVM, identifying and prioritizing relevant feature upgrades, appointing Emergency Engineers, as well as for preventing funds from being maliciously withdrawn from dApps on Neon.

When upgrading the Neon EVM, Development Assembly can add and remove precompiled Neon EVM versions from its approved version list. The Development Assembly also appoints Emergency Engineers that have the power to upgrade the EVM to an approved version without the Assembly's approval. These Engineers can also stop and restart the Neon EVM in case of an emergency.
When upgrading the Neon EVM, the Development Assembly can add and remove precompiled Neon EVM versions from its approved version list. The Development Assembly also appoints Emergency Engineers that have the power to upgrade the EVM to an approved version without the Assembly's approval. These Engineers can also stop and restart the Neon EVM in case of an emergency.

#### Usage Scenarios
The Development Assembly allows for proposals dealing with the following:
Expand Down
16 changes: 8 additions & 8 deletions docs/governance/overview/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,25 @@ The Neon DAO's Assemblies are built using [SPL Governance](https://github.com/so

## Voting Process Overview

1. Any DAO participant may bring their ideas to the community via the Neon Forum on Discord. These ideas will be discussed on Discord and evaluated by the community to gauge whether there is enough will and consensus to effect changes to kick off the next stage. This stage can be considered as an **off-chain** governance voting.
2. If there is enough consensus for the idea to be discussed further, a DAO participant then creates an official proposal on Neon DAO. This is now on-chain governance territory, and the components for it are implemented on Solana.
3. Once the proposal has been made, DAO participants may temporarily lock up their NEON tokens and receive their respective voting rights to vote on the proposal. DAO participants vote on this proposal during a pre-defined voting period
1. Any DAO participant may bring their ideas to the community via the Neon Forum on Discord. These ideas will be discussed on Discord and evaluated by the community to gauge whether there is enough will and consensus to effect the changes and kick off the next stage. This stage can be considered an example of **off-chain** governance.
2. If there is enough support for the idea to be discussed further, a DAO participant creates an official proposal on the Neon DAO. The idea now enters on-chain governance territory, and the components for it are implemented on Solana.
3. Once the proposal has been made, DAO participants may temporarily lock up their NEON tokens and receive their respective voting rights to vote on the proposal. DAO participants vote on this proposal during a pre-defined voting period. Voting works as follows:
* 1 NEON token = 1 vote
* A proposal is accepted if
1. The number of **"Yes"** votes exceeds a pre-determined threshold amount, and
2. The number of **"Yes"** votes exceeds the number of **"No"** votes
1. The number of **"Accept"** votes exceeds a pre-determined threshold amount, and
2. The number of **"Accept"** votes exceeds the number of **"Reject"** votes
* Otherwise, the proposal is rejected
4. Any DAO member can execute transactions in approved proposal during the **hold-up period**, which is the minimum time required to elapse before an approved proposal may be executed.
4. Any DAO member can execute an approved proposal after the **hold-up period** has passed.

All Neon DAO parameters, such as the pass threshold to accept a proposal, voting period, hold-up period, and the minimum token amount required to create a proposal, can be found in the Neon Governance UI.
All Neon DAO parameters, such as the pass threshold to accept a proposal, voting period, hold-up period, and the minimum token amount required to create a proposal, can be found on the Neon Governance UI.

Learn more about the [voting process](/docs/governance/proposals/proposals.md).

## Neon DAO Organization

Neon is decentralized and its economy is fee-based, with NEON tokens being used for governance purposes. Following the same philosophy, the Neon DAO is itself handled by a decentralized protocol with a clear and user-friendly process for proposing and voting for protocol improvements. It is organized as a series of decentralized **Assemblies** that are each responsible for a different aspect of the decisionmaking process. These Assemblies are grouped into the following three **Focus Areas**:

<div className='neon-img-box-600' style={{textAlign: 'center', width: 700, display: 'block', margin: 'auto'}}>
<div className='neon-img-box-600' style={{textAlign: 'center', width: 600, display: 'block', margin: 'auto'}}>

![](img/dao_organization.png)

Expand Down
6 changes: 1 addition & 5 deletions docs/governance/principles/principles.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,7 @@ The DAO Forum is not the place for general discussions, advertising, off-topic c

## Measures Against Abuse and Misuse

Like any governance system, the Neon DAO faces the risk of malicious actors being involved, which could jeopardize the Neon ecosystem as well as treasury or user funds if their subversive proposals are erronously passed. To reduce this risk, the Neon DAO has implemented defensive measures in three key areas, corresponding to stages along the process of a proposal becoming implemented. These areas are:

* Limiting the number of proposals
* Detecting malicious proposals
* Cancelling malicious proposals
Like any governance system, the Neon DAO faces the risk of malicious actors being involved, which could jeopardize the Neon ecosystem as well as treasury or user funds if their subversive proposals are erronously passed. To reduce this risk, the Neon DAO has implemented defensive measures in several key areas, corresponding to stages along the process of a proposal becoming implemented. These areas include limiting the number of proposals, detecting malicious proposals, and cancelling malicious proposals.

### Limiting the Number of Proposals
Malicious actors have an easier time pushing through one of their proposals if they can submit as many proposals as they like. To prevent this, the Neon DAO's Assemblies have protections in place to limit the number of proposals an Assembly can accept from a given user. These measures include:
Expand Down
2 changes: 1 addition & 1 deletion docs/quick_start.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import {ServiceLink} from '@site/src/components/ServiceLink'
import {PageHelpful} from '@site/src/components/PageHelpful'
import {FeedbackForm} from '@site/src/components/FeedbackForm'

*Neon EVM is a solution for anyone looking to scale Ethereum dApps on Solana in a developer-friendly manner and get access the growing Solana Ecosystem.*
*Neon EVM is a synergetic solution for anyone looking to scale Ethereum dApps on Solana in a developer-friendly manner and tap into Solana's vibrant ecosystem.*

<QuickStartList/>

Expand Down
2 changes: 1 addition & 1 deletion docs/tokens/gas_fees.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ The final formula for the gas fee for a Neon transaction with N iterations and S
## Examples
The following are some examples of gas fee calculation on Neon. They are all based on the following assumptions:
* The SOL price is $30 and the NEON price is $0.25
* The SOL-to-NEON rate is therefore 120.
* The SOL-to-NEON rate is therefore 30 / 0.25 = 120.
* The Proxy Operator fee is 10%.
* The gas price is therefore (1 + 10%) \* 120 \* 10<sup>-9</sup> NEON = 132 \* 10<sup>9</sup> Alan = 132 Galan

Expand Down
2 changes: 1 addition & 1 deletion docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ const config = {
},
links: [
{
title: 'Get started',
title: 'Getting Started',
items: [
{ label: '🏓 Quick Start', to: '/docs/quick_start' },
{ label: '🧬 Neon EVM Overview', to: '/docs/about/why_neon' },
Expand Down
14 changes: 7 additions & 7 deletions static/data/link-list.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,34 +7,34 @@
"id": 0,
"icon": "/icons/rpc.svg",
"title": "Connect to Neon RPC",
"description": "Start building right now",
"description": "Start building right away",
"url": "/docs/developing/connect_rpc"
},
{
"id": 1,
"icon": "/icons/config.svg",
"title": "Configure & use dev tools",
"description": "Hardhat, Truffle",
"title": "Configure & Use Devtools",
"description": "Hardhat and Truffle",
"url": "/docs/developing/deploy_facilities/configure_hardhat"
},
{
"id": 2,
"icon": "/icons/token.svg",
"title": "Get test tokens",
"description": "Airdrop test tokens",
"title": "Get Test Tokens",
"description": "Interact with dApps at no cost",
"url": "/docs/developing/utilities/faucet"
},
{
"id": 3,
"icon": "/icons/daps.svg",
"title": "Deploy dApps",
"description": "Using Hardhat, Truffle, Remix",
"description": "Using Hardhat, Truffle, and Remix",
"url": "/docs/developing/deploy_facilities/using_remix"
},
{
"id": 4,
"icon": "/icons/sol.svg",
"title": "Use Solana native tokens",
"title": "Use Solana-Native Tokens",
"description": "Get access to Solana liquidity",
"url": "/docs/developing/deploy_facilities/interacting_with_spl_tokens"
}
Expand Down

0 comments on commit 0b519ed

Please sign in to comment.