From 04ccc497d6bbd7d5c66493822a686caeabb3c903 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Tue, 15 Aug 2023 11:01:09 +0100 Subject: [PATCH 01/16] updates foundry tutorial link --- docs/developing/get-started.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/developing/get-started.md b/docs/developing/get-started.md index b4613626..a91f0f40 100644 --- a/docs/developing/get-started.md +++ b/docs/developing/get-started.md @@ -12,7 +12,7 @@ import TabItem from '@theme/TabItem'; :::note -Just in case you are not using our #ai-support channel in Discord to accelerate your access to the documentation, here is a bare bones Get Started. +This is a bare bones Get Started; alternatively browse the full support available here. ::: ## Get test NEON for Neon Devnet @@ -108,7 +108,7 @@ See the [Truffle tutorial](https://docs.neonfoundation.io/docs/developing/deploy -Foundry doesn’t have a config file like Hardhat or Truffle to configure the network settings. Rather, the RPC endpoint and the private key are specified in the command line when passing foundry commands. See the [Foundry tutorial](https://github.com/sukanyaparashar/simple-erc20-foundry). +Foundry doesn’t have a config file like Hardhat or Truffle to configure the network settings. Rather, the RPC endpoint and the private key are specified in the command line when passing foundry commands. See the [Foundry tutorial](https://github.com/neonlabsorg/examples/tree/main/simple-erc20-foundry). From f395eb7cf2f3d7e55d54fbc0000dab5f53f12001 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Tue, 15 Aug 2023 13:34:50 +0100 Subject: [PATCH 02/16] backup location for Grammarly style guide --- .github/styles/Grammarly.csv | 107 +++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 .github/styles/Grammarly.csv diff --git a/.github/styles/Grammarly.csv b/.github/styles/Grammarly.csv new file mode 100644 index 00000000..364c312b --- /dev/null +++ b/.github/styles/Grammarly.csv @@ -0,0 +1,107 @@ +"Original text",Rule,Explanation +"OX",0x,"Existing style, maintain consistency" +"24:7",24/7,"Existing style, maintain consistency" +"api;Api",API,"Existing style, maintain consistency" +"amongst",among,"Existing style, maintain consistency" +"Berkley Packet Filter;berkeley packet filter",Berkeley Packet Filter,"Existing style, maintain consistency" +"bi-weekly","biweekly","Existing style, maintain consistency" +"cex",CEX,"Acronyms in caps" +"CEXes",CEXs,"Existing style, maintain consistency" +"cryptobots;Cryptobots","CryptoBots","Brand name" +"cryptopunks;Cryptopunks",CryptoPunks,"Brand name" +"devnet",Devnet,"If this is Neon's Devnet or any other systems' use proper noun." +"DOA",DAO,"Oops, typo" +"DApp,Dapp,DAPP",dApp,"Exception is sentence start = DApp" +"DApps,Dapps,DAPPs,DAPPS",dApps,"Exception is sentence start = DApps" +""dex",DEX,"Acronyms in caps" +"DEXes",DEXs,"Existing style, maintain consistency" +discord,Discord,"Brand name" +dockerfile,Dockerfile,"Existing style, maintain consistency" +"Eterum,Etherum",Ethereum,"Watch out, typo" +"ERC 20;Erc-20;ERc-20;Erc 20;ERc 20,ERC20;Erc20;ERc20",ERC-20,"Existing style, maintain consistency" +"ERC 721;Erc-721;ERc-721;Erc 721;ERc 721,ERC721;Erc721;ERc721",ERC-721,"Existing style, maintain consistency" +"end-point;end point",endpoint,"Existing style, maintain consistency" +"evm;Evm",EVM,"Existing style, maintain consistency" +"Github,github,gitHub",GitHub,"Brand name" +"gHz,ghz",GHz,"Standard, maintain consistency" +"Javascript,javascript",JavaScript,"Brand name, maintain consistency" +"json,Json",JSON,"when referring to a file type or the standard, use caps" +"&",and,"Only apply & in heading or TL;DR (with the exception of webpage copy where space is an issue)" +"re-balancing,rebalancing","Existing style, maintain consistency" +"non-deterministic,nondeterministic","Existing style, maintain consistency" +"world-wide,worldwide","Stay consistent!" +"full withdrawl;full-withdrawl","Full Withdrawal","caps for the adjective or noun of a component of the system" +"front-end;front end","frontend","Existing style, maintain consistency" +"Decentralized finance",DeFi,"Apply acronym" +"off boarding;off-boarding",offboarding,"Existing style, maintain consistency" +"back-end;backend","backend","back-end is used as an adjective only." +"ID;id",Id,"Existing style, maintain consistency" +admin,Admin,"Use proper noun (caps) for an active component of a system e.g., ""The Admin authorizes the user""." +"Validity rollup;validity rollup","Validity Rollup", +"off chain;offchain",off-chain,"as an adjective off-chain would be the form plus this style has been extended for all uses" +"permissionless,permissionlessly",,"This should quiet the standard spelling flag" +"Layer 1;l1;layer 1",L1,"Use the acronym" +"Ethereum MainNet;Ethereum-Mainnet","Ethereum Mainnet ","Existing style, maintain consistency" +built-in,builtin,"This should quiet standard spelling flag" +governor,Governor,"Caps for a noun of an active component in the system" +"mainnet",Mainnet,"If this is Neon's Mainnet or any other named systems' use proper noun." +"Main-Net;Main-net;MainNet;main net;main-net;mainNet",Mainnet,"Existing style, maintain consistency" +"Maker DAO, Maker-DAO",MakerDAO,"Brand name" +"Merkel Patricia-Trie;Merkel Patricia Trie",Merkel-Patricia Trie,"Standard" +"Metamask;Meta mask;metamask;metaMask",MetaMask,"Brand name" +"multi sig;multi-sig",multisig,"Existing style, maintain consistency" +"the Neon EVM",Neon EVM,"Existing style, maintain consistency" +"NoenEVM;Noen EVM;NeonEVM",Neon EVM,"Existing style, maintain consistency" +"Neon Scan;NoenScan",NeonScan,"PascalCase for tools. Existing style, maintain consistency" +"Neon pass;Neon Pass,NoenPass",NeonPass,"PascalCase for tools. Existing style, maintain consistency" +"Neon faucet;Neon Faucet,NoenFaucet",NeonFaucet,"PascalCase for tools. Existing style, maintain consistency" +"Neon",NEON,"NEON caps is the token, Neon the noun should rarely be used > provide component instead" +"NEONS, Neons, neons",NEON,"The plural of NEON is NEON" +"proxy",Proxy,"Existing style, maintain consistency" +"NeonProxy, Noen proxy, Neon proxy",Neon Proxy,"Existing style, maintain consistency" +"Nft",NFT,"Acronymn as caps" +"node JS,Node JS",NodeJS,"Brand name" +"L2 rollup","L2 Rollup","as per ""On the Road"" Medium post" +"on boarding;on-boarding",onboarding,"Existing style, maintain consistency" +"rollup",Rollup,"proper noun for all rollup types - IF compounded proper noun for leading name also" +"Optimistic rollup;optimistic rollup","Optimistic Rollup","proper noun" +operator,Operator,"caps for a noun of an active component of the system" +"on chain;onchain",on-chain,"as an adjective on-chain would be the form plus this style has been extended for all uses" +"OpenZepelin;OpenZeppellin",OpenZeppelin,"Brand name" +"PRC",RPC,"Did you mean RPC as in Remote Procedure Call endpoint?" +"Side chains, Side-chains;side chains, side-chains",sidechains,"Existing style, maintain consistency" +smart-contract,"smart contract","Existing style, maintain consistency" +"Side chain;Side-chain;side chain;side-chain",sidechain,"Existing style, maintain consistency" +"sealevel,Sea Level",Sealevel,"Brand name" +"singing",signing,"Do you really mean to sing?!" +"solana,Solna",Solana,"Watch out, typo" +"stable coin",stablecoin,"Existing style, maintain consistency" +"Stark-Ex;Stark-ex;Starkex;starkex",StarkEx,"Proper noun's form" +"StarkEx Contract;StarkEx Smart Contract;StarkEx smart Contract;Starkex Contract","StarkEx smart contract","Trial style: Proper noun plus ""common"" noun" +"STARK key;Stark Key;starkKey","Stark key","Treat as a noun. Do not split the individual words with an adjective, rather place the adjective before the term. +StrakEx,StarkEx,"typo fix" +"Sushiswap",SushiSwap,"Brand name" +"Stark;stark",STARK,"style is all caps for this proper noun" +"pseudo code;pseudocode",pseudo-code,"Existing style, maintain consistency" +"StrakGate",StarkGate,"typo fix" +"StarkNet;StrakNet",Starknet,"typo fix" +"spl",SPL,"Acronym has caps" +"time lock;time-lock",timelock,"Existing style, maintain consistency" +"testnet",Testnet,"If this is Neon's Testnet or any other systems' use proper noun." +"Test-Net;test-net;TestNet;Test net;test-net;testNet",Testnnet,"Existing style, maintain consistency" +"tps",TPS,"Acronym has caps" +"trx;TRX",tx,"Existing style to abbreviate transaction, NO CAPS, maintain consistency" +"tvl",TVL,"Acronym has caps" +"the Neon,The Neon","Neon","The Neon EVM can be stated as Neon EVM" +"the Mainnet,The Mainnet","Mainnet","The Mainnet can be stated as Mainnet" +"the Devnet,The Devnet","Devnet","The Devnet can be stated as Devnet" +"UniSwap,uniswap",Uniswap,"Brand name" +"U.S,U.S.",US,"Existing style, maintain consistency" +"U.S.A,U.S.A.",US,"Existing style, maintain consistency" +"white paper",whitepaper,"Existing style, maintain consistency" +"White paper",Whitepaper,"Existing style, maintain consistency" +"web3,web 3,Web 3",Web3,"Existing style, maintain consistency" +"ZK-rollup;ZKRollup;zk-rollup;zkRollup",ZK-Rollup,"Existing style, maintain consistency" +"zk SNARK",zk-SNARK,"Existing style, maintain consistency" +"zk STARK",zk-STARK,"Existing style, maintain consistency" + From df29a3f644c50a32a9c03444a4684cf4269475d3 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Thu, 17 Aug 2023 10:37:02 +0100 Subject: [PATCH 03/16] adds to backup style --- .github/styles/Grammarly.csv | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/styles/Grammarly.csv b/.github/styles/Grammarly.csv index 364c312b..854512b3 100644 --- a/.github/styles/Grammarly.csv +++ b/.github/styles/Grammarly.csv @@ -41,7 +41,8 @@ admin,Admin,"Use proper noun (caps) for an active component of a system e.g., "" "off chain;offchain",off-chain,"as an adjective off-chain would be the form plus this style has been extended for all uses" "permissionless,permissionlessly",,"This should quiet the standard spelling flag" "Layer 1;l1;layer 1",L1,"Use the acronym" -"Ethereum MainNet;Ethereum-Mainnet","Ethereum Mainnet ","Existing style, maintain consistency" +"Layer 2;l1;layer 2",L2,"Use the acronym" +"Ethereum MainNet;Ethereum-Mainnet","Ethereum Mainnet","Existing style, maintain consistency" built-in,builtin,"This should quiet standard spelling flag" governor,Governor,"Caps for a noun of an active component in the system" "mainnet",Mainnet,"If this is Neon's Mainnet or any other named systems' use proper noun." @@ -69,6 +70,9 @@ operator,Operator,"caps for a noun of an active component of the system" "on chain;onchain",on-chain,"as an adjective on-chain would be the form plus this style has been extended for all uses" "OpenZepelin;OpenZeppellin",OpenZeppelin,"Brand name" "PRC",RPC,"Did you mean RPC as in Remote Procedure Call endpoint?" +"p2p",P2P,"Brand name" +"POH,poh",PoH,"Existing style, maintain consistency" +"POS,pos",PoS,"Existing style, maintain consistency" "Side chains, Side-chains;side chains, side-chains",sidechains,"Existing style, maintain consistency" smart-contract,"smart contract","Existing style, maintain consistency" "Side chain;Side-chain;side chain;side-chain",sidechain,"Existing style, maintain consistency" @@ -89,6 +93,7 @@ StrakEx,StarkEx,"typo fix" "time lock;time-lock",timelock,"Existing style, maintain consistency" "testnet",Testnet,"If this is Neon's Testnet or any other systems' use proper noun." "Test-Net;test-net;TestNet;Test net;test-net;testNet",Testnnet,"Existing style, maintain consistency" +"TL:DR,tl:dr,tl;dr",TL;DR,"Existing style, maintain consistency" "tps",TPS,"Acronym has caps" "trx;TRX",tx,"Existing style to abbreviate transaction, NO CAPS, maintain consistency" "tvl",TVL,"Acronym has caps" From 016d35adf48f9445b416d5a0015c023ff127aa80 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Tue, 22 Aug 2023 14:53:24 +0100 Subject: [PATCH 04/16] Fixes (#73) * updates foundry tutorial link * backup location for Grammarly style guide * adds to backup style --- .github/styles/Grammarly.csv | 112 +++++++++++++++++++++++++++++++++ docs/developing/get-started.md | 4 +- 2 files changed, 114 insertions(+), 2 deletions(-) create mode 100644 .github/styles/Grammarly.csv diff --git a/.github/styles/Grammarly.csv b/.github/styles/Grammarly.csv new file mode 100644 index 00000000..854512b3 --- /dev/null +++ b/.github/styles/Grammarly.csv @@ -0,0 +1,112 @@ +"Original text",Rule,Explanation +"OX",0x,"Existing style, maintain consistency" +"24:7",24/7,"Existing style, maintain consistency" +"api;Api",API,"Existing style, maintain consistency" +"amongst",among,"Existing style, maintain consistency" +"Berkley Packet Filter;berkeley packet filter",Berkeley Packet Filter,"Existing style, maintain consistency" +"bi-weekly","biweekly","Existing style, maintain consistency" +"cex",CEX,"Acronyms in caps" +"CEXes",CEXs,"Existing style, maintain consistency" +"cryptobots;Cryptobots","CryptoBots","Brand name" +"cryptopunks;Cryptopunks",CryptoPunks,"Brand name" +"devnet",Devnet,"If this is Neon's Devnet or any other systems' use proper noun." +"DOA",DAO,"Oops, typo" +"DApp,Dapp,DAPP",dApp,"Exception is sentence start = DApp" +"DApps,Dapps,DAPPs,DAPPS",dApps,"Exception is sentence start = DApps" +""dex",DEX,"Acronyms in caps" +"DEXes",DEXs,"Existing style, maintain consistency" +discord,Discord,"Brand name" +dockerfile,Dockerfile,"Existing style, maintain consistency" +"Eterum,Etherum",Ethereum,"Watch out, typo" +"ERC 20;Erc-20;ERc-20;Erc 20;ERc 20,ERC20;Erc20;ERc20",ERC-20,"Existing style, maintain consistency" +"ERC 721;Erc-721;ERc-721;Erc 721;ERc 721,ERC721;Erc721;ERc721",ERC-721,"Existing style, maintain consistency" +"end-point;end point",endpoint,"Existing style, maintain consistency" +"evm;Evm",EVM,"Existing style, maintain consistency" +"Github,github,gitHub",GitHub,"Brand name" +"gHz,ghz",GHz,"Standard, maintain consistency" +"Javascript,javascript",JavaScript,"Brand name, maintain consistency" +"json,Json",JSON,"when referring to a file type or the standard, use caps" +"&",and,"Only apply & in heading or TL;DR (with the exception of webpage copy where space is an issue)" +"re-balancing,rebalancing","Existing style, maintain consistency" +"non-deterministic,nondeterministic","Existing style, maintain consistency" +"world-wide,worldwide","Stay consistent!" +"full withdrawl;full-withdrawl","Full Withdrawal","caps for the adjective or noun of a component of the system" +"front-end;front end","frontend","Existing style, maintain consistency" +"Decentralized finance",DeFi,"Apply acronym" +"off boarding;off-boarding",offboarding,"Existing style, maintain consistency" +"back-end;backend","backend","back-end is used as an adjective only." +"ID;id",Id,"Existing style, maintain consistency" +admin,Admin,"Use proper noun (caps) for an active component of a system e.g., ""The Admin authorizes the user""." +"Validity rollup;validity rollup","Validity Rollup", +"off chain;offchain",off-chain,"as an adjective off-chain would be the form plus this style has been extended for all uses" +"permissionless,permissionlessly",,"This should quiet the standard spelling flag" +"Layer 1;l1;layer 1",L1,"Use the acronym" +"Layer 2;l1;layer 2",L2,"Use the acronym" +"Ethereum MainNet;Ethereum-Mainnet","Ethereum Mainnet","Existing style, maintain consistency" +built-in,builtin,"This should quiet standard spelling flag" +governor,Governor,"Caps for a noun of an active component in the system" +"mainnet",Mainnet,"If this is Neon's Mainnet or any other named systems' use proper noun." +"Main-Net;Main-net;MainNet;main net;main-net;mainNet",Mainnet,"Existing style, maintain consistency" +"Maker DAO, Maker-DAO",MakerDAO,"Brand name" +"Merkel Patricia-Trie;Merkel Patricia Trie",Merkel-Patricia Trie,"Standard" +"Metamask;Meta mask;metamask;metaMask",MetaMask,"Brand name" +"multi sig;multi-sig",multisig,"Existing style, maintain consistency" +"the Neon EVM",Neon EVM,"Existing style, maintain consistency" +"NoenEVM;Noen EVM;NeonEVM",Neon EVM,"Existing style, maintain consistency" +"Neon Scan;NoenScan",NeonScan,"PascalCase for tools. Existing style, maintain consistency" +"Neon pass;Neon Pass,NoenPass",NeonPass,"PascalCase for tools. Existing style, maintain consistency" +"Neon faucet;Neon Faucet,NoenFaucet",NeonFaucet,"PascalCase for tools. Existing style, maintain consistency" +"Neon",NEON,"NEON caps is the token, Neon the noun should rarely be used > provide component instead" +"NEONS, Neons, neons",NEON,"The plural of NEON is NEON" +"proxy",Proxy,"Existing style, maintain consistency" +"NeonProxy, Noen proxy, Neon proxy",Neon Proxy,"Existing style, maintain consistency" +"Nft",NFT,"Acronymn as caps" +"node JS,Node JS",NodeJS,"Brand name" +"L2 rollup","L2 Rollup","as per ""On the Road"" Medium post" +"on boarding;on-boarding",onboarding,"Existing style, maintain consistency" +"rollup",Rollup,"proper noun for all rollup types - IF compounded proper noun for leading name also" +"Optimistic rollup;optimistic rollup","Optimistic Rollup","proper noun" +operator,Operator,"caps for a noun of an active component of the system" +"on chain;onchain",on-chain,"as an adjective on-chain would be the form plus this style has been extended for all uses" +"OpenZepelin;OpenZeppellin",OpenZeppelin,"Brand name" +"PRC",RPC,"Did you mean RPC as in Remote Procedure Call endpoint?" +"p2p",P2P,"Brand name" +"POH,poh",PoH,"Existing style, maintain consistency" +"POS,pos",PoS,"Existing style, maintain consistency" +"Side chains, Side-chains;side chains, side-chains",sidechains,"Existing style, maintain consistency" +smart-contract,"smart contract","Existing style, maintain consistency" +"Side chain;Side-chain;side chain;side-chain",sidechain,"Existing style, maintain consistency" +"sealevel,Sea Level",Sealevel,"Brand name" +"singing",signing,"Do you really mean to sing?!" +"solana,Solna",Solana,"Watch out, typo" +"stable coin",stablecoin,"Existing style, maintain consistency" +"Stark-Ex;Stark-ex;Starkex;starkex",StarkEx,"Proper noun's form" +"StarkEx Contract;StarkEx Smart Contract;StarkEx smart Contract;Starkex Contract","StarkEx smart contract","Trial style: Proper noun plus ""common"" noun" +"STARK key;Stark Key;starkKey","Stark key","Treat as a noun. Do not split the individual words with an adjective, rather place the adjective before the term. +StrakEx,StarkEx,"typo fix" +"Sushiswap",SushiSwap,"Brand name" +"Stark;stark",STARK,"style is all caps for this proper noun" +"pseudo code;pseudocode",pseudo-code,"Existing style, maintain consistency" +"StrakGate",StarkGate,"typo fix" +"StarkNet;StrakNet",Starknet,"typo fix" +"spl",SPL,"Acronym has caps" +"time lock;time-lock",timelock,"Existing style, maintain consistency" +"testnet",Testnet,"If this is Neon's Testnet or any other systems' use proper noun." +"Test-Net;test-net;TestNet;Test net;test-net;testNet",Testnnet,"Existing style, maintain consistency" +"TL:DR,tl:dr,tl;dr",TL;DR,"Existing style, maintain consistency" +"tps",TPS,"Acronym has caps" +"trx;TRX",tx,"Existing style to abbreviate transaction, NO CAPS, maintain consistency" +"tvl",TVL,"Acronym has caps" +"the Neon,The Neon","Neon","The Neon EVM can be stated as Neon EVM" +"the Mainnet,The Mainnet","Mainnet","The Mainnet can be stated as Mainnet" +"the Devnet,The Devnet","Devnet","The Devnet can be stated as Devnet" +"UniSwap,uniswap",Uniswap,"Brand name" +"U.S,U.S.",US,"Existing style, maintain consistency" +"U.S.A,U.S.A.",US,"Existing style, maintain consistency" +"white paper",whitepaper,"Existing style, maintain consistency" +"White paper",Whitepaper,"Existing style, maintain consistency" +"web3,web 3,Web 3",Web3,"Existing style, maintain consistency" +"ZK-rollup;ZKRollup;zk-rollup;zkRollup",ZK-Rollup,"Existing style, maintain consistency" +"zk SNARK",zk-SNARK,"Existing style, maintain consistency" +"zk STARK",zk-STARK,"Existing style, maintain consistency" + diff --git a/docs/developing/get-started.md b/docs/developing/get-started.md index b4613626..a91f0f40 100644 --- a/docs/developing/get-started.md +++ b/docs/developing/get-started.md @@ -12,7 +12,7 @@ import TabItem from '@theme/TabItem'; :::note -Just in case you are not using our #ai-support channel in Discord to accelerate your access to the documentation, here is a bare bones Get Started. +This is a bare bones Get Started; alternatively browse the full support available here. ::: ## Get test NEON for Neon Devnet @@ -108,7 +108,7 @@ See the [Truffle tutorial](https://docs.neonfoundation.io/docs/developing/deploy -Foundry doesn’t have a config file like Hardhat or Truffle to configure the network settings. Rather, the RPC endpoint and the private key are specified in the command line when passing foundry commands. See the [Foundry tutorial](https://github.com/sukanyaparashar/simple-erc20-foundry). +Foundry doesn’t have a config file like Hardhat or Truffle to configure the network settings. Rather, the RPC endpoint and the private key are specified in the command line when passing foundry commands. See the [Foundry tutorial](https://github.com/neonlabsorg/examples/tree/main/simple-erc20-foundry). From a4fee95f17a2106cbfcf164c2a3cf57d46c693d4 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Thu, 24 Aug 2023 16:22:22 +0100 Subject: [PATCH 05/16] updates style and applies style to Galan --- .github/styles/Grammarly.csv | 10 +++++++--- .github/styles/Vocab/Neon/accept.txt | 1 + .github/styles/Vocab/Neon/reject.txt | 4 ++++ docs/operating/transaction-gas.md | 4 ++-- docs/single-source-snippets/_gas-price.mdx | 4 ++-- 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/.github/styles/Grammarly.csv b/.github/styles/Grammarly.csv index 854512b3..bdfb6b10 100644 --- a/.github/styles/Grammarly.csv +++ b/.github/styles/Grammarly.csv @@ -1,8 +1,12 @@ "Original text",Rule,Explanation +"&",and,"Only apply & in heading or TL;DR (with the exception of webpage copy where space is an issue)" "OX",0x,"Existing style, maintain consistency" "24:7",24/7,"Existing style, maintain consistency" +"ALANS, alans",Alan,"The plural of Alan is Alan" +"ALAN, alan",Alan,"Existing style, maintain consistency" "api;Api",API,"Existing style, maintain consistency" "amongst",among,"Existing style, maintain consistency" +"back-end;backend","backend","back-end is used as an adjective only." "Berkley Packet Filter;berkeley packet filter",Berkeley Packet Filter,"Existing style, maintain consistency" "bi-weekly","biweekly","Existing style, maintain consistency" "cex",CEX,"Acronyms in caps" @@ -26,15 +30,14 @@ dockerfile,Dockerfile,"Existing style, maintain consistency" "gHz,ghz",GHz,"Standard, maintain consistency" "Javascript,javascript",JavaScript,"Brand name, maintain consistency" "json,Json",JSON,"when referring to a file type or the standard, use caps" -"&",and,"Only apply & in heading or TL;DR (with the exception of webpage copy where space is an issue)" -"re-balancing,rebalancing","Existing style, maintain consistency" "non-deterministic,nondeterministic","Existing style, maintain consistency" "world-wide,worldwide","Stay consistent!" "full withdrawl;full-withdrawl","Full Withdrawal","caps for the adjective or noun of a component of the system" "front-end;front end","frontend","Existing style, maintain consistency" "Decentralized finance",DeFi,"Apply acronym" +"GALANS, Galans, galans",Galan,"The plural of Galan is Galan" +"GALAN, galan",Galan,"Existing style, maintain consistency" "off boarding;off-boarding",offboarding,"Existing style, maintain consistency" -"back-end;backend","backend","back-end is used as an adjective only." "ID;id",Id,"Existing style, maintain consistency" admin,Admin,"Use proper noun (caps) for an active component of a system e.g., ""The Admin authorizes the user""." "Validity rollup;validity rollup","Validity Rollup", @@ -73,6 +76,7 @@ operator,Operator,"caps for a noun of an active component of the system" "p2p",P2P,"Brand name" "POH,poh",PoH,"Existing style, maintain consistency" "POS,pos",PoS,"Existing style, maintain consistency" +"re-balancing,rebalancing","Existing style, maintain consistency" "Side chains, Side-chains;side chains, side-chains",sidechains,"Existing style, maintain consistency" smart-contract,"smart contract","Existing style, maintain consistency" "Side chain;Side-chain;side chain;side-chain",sidechain,"Existing style, maintain consistency" diff --git a/.github/styles/Vocab/Neon/accept.txt b/.github/styles/Vocab/Neon/accept.txt index 08c86c9a..44cc174b 100644 --- a/.github/styles/Vocab/Neon/accept.txt +++ b/.github/styles/Vocab/Neon/accept.txt @@ -10,6 +10,7 @@ DeFi platform ESLint Ethereum [Ff]ailover +Galan gcc gif Gitter diff --git a/.github/styles/Vocab/Neon/reject.txt b/.github/styles/Vocab/Neon/reject.txt index e2b86adc..fd44a1cc 100644 --- a/.github/styles/Vocab/Neon/reject.txt +++ b/.github/styles/Vocab/Neon/reject.txt @@ -7,3 +7,7 @@ mainNet MainMet testNet TestNet +GALAN +GALANS +galan +NeonEVM \ No newline at end of file diff --git a/docs/operating/transaction-gas.md b/docs/operating/transaction-gas.md index 2a0b0fe6..036e378c 100644 --- a/docs/operating/transaction-gas.md +++ b/docs/operating/transaction-gas.md @@ -47,7 +47,7 @@ For example: - $NEON = $0.25 - $SOL = $10 - PRX_OPERATOR_FEE = "1" -- Gas price = 10 / 0.25 * (1 + 1) = 80 Galans +- Gas price = 10 / 0.25 * (1 + 1) = 80 Galan Neon recommends that Neon Operators should initially set `PRX_OPERATOR_FEE` to “1.0” for Mainnet launch. This allows Operators to cover their hardware costs while transaction demands are low. As demand grows, Operators may adjust their fees in response. @@ -60,7 +60,7 @@ An Operator has two options: - **Recommended**: set up the `PRX_MINIMAL_GAS_PRICE` to 1 as per the default value in EVMs - Set up the `PRX_MINIMAL_GAS_PRICE` to reject low offers -> For example, by setting the gas price minimum to 65 Galans, Neon Proxy rejects transactions with a gas price of less than 65. +> For example, by setting the gas price minimum to 65 Galan, Neon Proxy rejects transactions with a gas price of less than 65. If a transaction request arrives with a gas price below that of the Operator costs + Operator fee, but with a gas price larger than the designated `PRX_MINIMAL_GAS_PRICE`, the Neon Proxy accepts the transaction into mempool. diff --git a/docs/single-source-snippets/_gas-price.mdx b/docs/single-source-snippets/_gas-price.mdx index 6901e591..29080e3f 100644 --- a/docs/single-source-snippets/_gas-price.mdx +++ b/docs/single-source-snippets/_gas-price.mdx @@ -4,9 +4,9 @@ The **gas price** is the cost of 1 unit of gas in NEON. This price is calculated which can also be represented as: -> (1 + Proxy Operator fee) \* SOL-to-NEON-rate Galans +> (1 + Proxy Operator fee) \* SOL-to-NEON-rate Galan -This amount is usually displayed for users in Galans (10-9 NEONs). +This amount is usually displayed for users in Galan (10-9 NEONs). The final formula for the gas fee for a Neon transaction with N iterations and S newly allocated bytes is: From 5a22ceeb95a1a3a1302cb526ed542bcbdab2cd59 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Mon, 28 Aug 2023 12:08:15 +0100 Subject: [PATCH 06/16] applies discussed updates to remove duplication --- ...solana.md => local_proxy_remote_solana.md} | 64 +++++++++++-------- .../op2_local_proxy_local_solana.md | 48 -------------- sidebars.js | 8 +-- 3 files changed, 38 insertions(+), 82 deletions(-) rename docs/developing/dev_environment/{op3_local_proxy_remote_solana.md => local_proxy_remote_solana.md} (59%) delete mode 100644 docs/developing/dev_environment/op2_local_proxy_local_solana.md diff --git a/docs/developing/dev_environment/op3_local_proxy_remote_solana.md b/docs/developing/dev_environment/local_proxy_remote_solana.md similarity index 59% rename from docs/developing/dev_environment/op3_local_proxy_remote_solana.md rename to docs/developing/dev_environment/local_proxy_remote_solana.md index 9f411daa..a94d21ca 100644 --- a/docs/developing/dev_environment/op3_local_proxy_remote_solana.md +++ b/docs/developing/dev_environment/local_proxy_remote_solana.md @@ -1,60 +1,68 @@ --- title: "Local Proxy to Remote Solana" -proofedDate: na +proofedDate: 20230828 iterationBy: na includedInSite: true approvedBy: na -comment: +comment: Local to local was updated -- todo verify this page; may need update also e.g. instruction says For Devnet/Testnet, it should be `eeLSJgWzzxrqKv1UxtRVVH8FX3qCQWUs9QuAjJpETGU` but are Devnet and Testnet not two different entities? --- +:::info +The [Proxy local testing tutorial](/docs/operating/basic) describes how to perform testing with a local Proxy to a local Solana node. This option can be useful for developers who want to debug their Solidity contracts by hosting both Proxy and Solana nodes locally. This page provides a tutorial that demonstrates how to transact from a local Proxy to a public, remote Solana. +::: + + ## Prerequisites -[Docker](https://docs.docker.com/get-docker/) must be already installed on your device. `docker-compose` v1.29 is recommended. +[Docker](https://docs.docker.com/get-docker/); `docker-compose` v1.29 is recommended. -## Network Configuration - * The target Solana cluster is accessed via the locally-hosted proxy. - * Solana [Testnet](https://docs.solana.com/clusters#testnet)/[Devnet](https://docs.solana.com/clusters#devnet)/[Mainnet](https://docs.solana.com/clusters#mainnet-beta) is used, and the proxy interacts with it through the Neon EVM. +## Network configuration + * The target Solana cluster is accessed via the locally-hosted Proxy. + * Solana [Testnet](https://docs.solana.com/clusters#testnet)/[Devnet](https://docs.solana.com/clusters#devnet)/[Mainnet](https://docs.solana.com/clusters#mainnet-beta) is used, and the Proxy interacts with it through Neon EVM. -## Setting up a Local Proxy -First, set up and host a proxy locally as per the following steps. After executing these commands, the proxy will be available at `http://localhost:9090/solana`. This address and port are set by default. +## Set up a local Proxy +First, set up and host a Proxy locally as per the following steps. After executing these commands, the Proxy will be available at `http://localhost:9090/solana`. This address and port are set by default. ### Step 1: Docker -Docker images themselves are never "started" and never "running". The `docker run` command takes the Docker image as a template and produces a container from it. Before starting your proxy container, you need to start service containers. +Docker images themselves are never "started" and never "running". The `docker run` command takes the Docker image as a template and produces a container from it. Before starting your Proxy container, you need to start service containers. Make sure that you have a daemon running by executing the following command: ```bash docker info ``` + +:::tip If you see something like this: ```console -Cannot connect to the Docker daemon at . Is the docker daemon running? +Can't connect to the Docker daemon at . Is the docker daemon running? ``` -you need to run the daemon first: +run the daemon first: ```bash sudo systemctl start docker ``` +::: ### Step 2: Run the Database, Indexer, and Proxy Services -In this step, you will create the services necessary for the function of the proxy (including database and indexer services), as well as the proxy service itself. These services, the functions of which are described below, will be created from a docker-compose.yml file. +In this step, you will create the services necessary for the function of the Proxy (including database and indexer services), as well as the Proxy service itself. These services, the functions of which are described below, will be created from a docker-compose.yml file. #### Database Services -This container aims to handle the database that stores all the relevant Ethereum processing metadata linked to each other: **`transactions`**, **`blocks`**, **`receipts`**, **`accounts`** etc. This data is consumed by the **Indexer** service. +This container aims to handle the database that stores all the relevant Ethereum processing metadata linked to each other: **`transactions`**, **`blocks`**, **`receipts`**, **`accounts`**, etc. This data is consumed by the **Indexer** service. -Currently, Neon EVM proxies are hardcoded to work with PostgreSQL. To connect the proxy to a database, you need to start a PostgreSQL container. The default settings are hardcoded in the following docker-compose.yml file. If you want to use your proxy with other settings, you need to register as an operator so that the Neon EVM can recognize your keys. +Currently, Neon EVM proxies are hard coded to work with PostgreSQL. To connect the Proxy to a database, you need to start a PostgreSQL container. The default settings are hard coded in the following docker-compose.yml file. If you want to use your Proxy with other settings, you need to register as an Operator so that Neon EVM can recognize your keys. -> Only authorized operators can change the settings of these parameters. +> Only authorized Operators can change the settings of these parameters. Learn more about [operating a Neon Proxy](/docs/operating/operator-introduction.md) #### Indexer Service -The indexer service indexes all the relevant Ethereum processing metadata consisting of **`signatures`**, **`transactions`**, **`blocks`**, **`receipts`**, **`accounts`**, etc. It gathers all this data from the Solana blockchain, filtering them by the EVM contract address. It also makes it possible to provide our users with the Ethereum API according to the data provided by the whole known operators. +The indexer service indexes all the relevant Ethereum processing metadata consisting of **`signatures`**, **`transactions`**, **`blocks`**, **`receipts`**, **`accounts`**, etc. It gathers all this data from the Solana blockchain, filtering them by the EVM contract address. It enables us to provide our users with the Ethereum API. #### Proxy Service The Proxy service is a core service that allows Ethereum-like transactions to be processed on Solana, taking full advantage of Solana-native functionality, including the ability to execute transactions in parallel. -The Neon EVM address is registered inside `neonlabsorg/proxy`, so the proxy knows which Neon EVM is running in the Solana cluster. After executing this command, the proxy will be available at `http://localhost:9090/solana`. This address and port are set by default. +The Neon EVM address is registered inside `neonlabsorg/proxy`, so the Proxy knows which Neon EVM is running in the Solana cluster. After executing this command, the Proxy will be available at `http://localhost:9090/solana`. This address and port are set by default. #### Create and Run Services with Docker Compose -In order to create and run these abovementioned services, +In order to create and run these services, -1. Create "keys" folder and put your whitelisted key into it. Note that the file with operator key should be named `id.json`. +1. Create a "keys" folder and put your allowlisted key into it. Note that the file with the Operator key should be named `id.json`. ```bash mkdir keys mv {PATH_TO_WHITELISTED_KEYS} keys/ @@ -62,7 +70,7 @@ mv {PATH_TO_WHITELISTED_KEYS} keys/ 2. Set the following environment variables - `EVM_LOADER` - - For devnet/testnet, it should be `eeLSJgWzzxrqKv1UxtRVVH8FX3qCQWUs9QuAjJpETGU` + - For Devnet/Testnet, it should be `eeLSJgWzzxrqKv1UxtRVVH8FX3qCQWUs9QuAjJpETGU` - `SOLANA_URL` - Refer to the [RPC Endpoints table](#rpc-endpoints) - `PROXY_VERSION` @@ -97,23 +105,23 @@ Creating indexer ... done Creating proxy ... done ``` -## Connecting to Solana Cluster RPC Endpoints +## Connect to a Solana cluster RPC endpoint -A proxy connects to a public [Solana cluster RPC endpoint](https://docs.solana.com/cluster/rpc-endpoints) depending on the `SOLANA_URL` value set. The table below shows the *endpoint* value that is set automatically based on the value of the `CONFIG` flag. +A Proxy connects to a public [Solana cluster RPC endpoint](https://docs.solana.com/cluster/rpc-endpoints) depending on the `SOLANA_URL` value set. The table below shows the *endpoint* value that is set automatically based on the value of the `CONFIG` flag. -### RPC Endpoints +### RPC endpoints CONFIG | RPC Endpoint :-|:- -devnet | `https://api.devnet.solana.com` -testnet | `https://api.testnet.solana.com` -mainnet | `https://api.mainnet-beta.solana.com` +Devnet | `https://api.devnet.solana.com` +Testnet | `https://api.testnet.solana.com` +Mainnet | `https://api.mainnet-beta.solana.com` To use a different endpoint, you need to specify the variable `-e SOLANA_URL='http://'` on the command line. For example, in order to use devnet, add the flag `-e SOLANA_URL='https://api.devnet.solana.com'`. -When a proxy is deployed, it generates a wallet containing a key pair. If you do not need the new wallet and want to use the keys you already have, you need to specify the path to your wallet on the command line. +When a Proxy is deployed, it generates a wallet containing a key pair. If you do not need the new wallet and want to use the keys you already have, you need to specify the path to your wallet on the command line. **Command Line Options** * `~/.config/solana/id.json` — absolute path to your key pair file stored locally - * `--name proxy` — specifies the proxy name + * `--name proxy` — specifies the Proxy name diff --git a/docs/developing/dev_environment/op2_local_proxy_local_solana.md b/docs/developing/dev_environment/op2_local_proxy_local_solana.md deleted file mode 100644 index 38758c88..00000000 --- a/docs/developing/dev_environment/op2_local_proxy_local_solana.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "Local Proxy to Local Solana" -proofedDate: na -iterationBy: na -includedInSite: true -approvedBy: na -comment: ---- - -This option will let you connect to Solana via a proxy, when **both** are hosted locally. This option can be useful for developers that want to debug their Solidity contracts by hosting a proxy and a Solana node locally. - -## Prerequisites -[Docker](https://docs.docker.com/get-docker/) must be already installed on your device. `docker-compose` v1.29 is recommended. - -## Network Configuration - * Both the Solana node and the proxy are hosted locally - * The proxy interacts with the Solana node through the Neon EVM - -## Setting up Local Proxy and Local Solana Node - -Download the `docker-compose-test.yml` file to your currently directory using the following command: -```bash -wget https://raw.githubusercontent.com/neonlabsorg/proxy-model.py/master/proxy/docker-compose-test.yml -``` - -Execute the command: -```bash -sudo REVISION=stable docker-compose -f docker-compose-test.yml up -d --quiet-pull -``` - -The output should look like this: -```console -Creating solana ... done -Creating evm_loader ... done -Creating postgres ... done -Creating proxy ... done -Creating indexer ... done -``` -As soon as the latest command is completed, the proxy will start to deploy the Neon EVM in a local Solana node. After that, the proxy and Solana will be available at the URLs `http://localhost:9090/solana` and `http://localhost:8899`, respectively. The Neon faucet will also be available at `http://localhost:3333`. - ---- - -> **Note:** -> For your proxy, you can use the dedicated Neon server, or a separate server that you will need to deploy and log into. -> -> For the Solana endpoint, you can use a separate node hosted on Devnet or Testnet. -> -You can also use a Solana node that is not hosted on any network. In this case, you will need to configure this node and synchronize it with the Devnet or Testnet network. Then you will need to deploy the local proxy and configure it to work with this node. In addition, you will also need to connect to the EVM loader deployed within Devnet or Testnet. diff --git a/sidebars.js b/sidebars.js index a7c3e968..d6f972d3 100644 --- a/sidebars.js +++ b/sidebars.js @@ -110,13 +110,9 @@ const sidebars = { ] }, { - type: 'category', + type: 'doc', label: 'Set up Local Neon EVM', - items: [ - 'developing/dev_environment/op2_local_proxy_local_solana', - 'developing/dev_environment/op3_local_proxy_remote_solana', - 'clusters/solana_cluster' - ] + id: 'developing/dev_environment/local_proxy_remote_solana' }, { type: 'html', value: ' -To perform this transaction, the Neon EVM emulator makes a request to Solana to get state data. The proxy requests a blockchain state from Solana and makes a test launch of N-trx using the Solana state. On the basis of the data received, Proxy forms the new transaction according to Solana's rules. The transaction generated for Solana will contain the packaged N-trx, as well as the account data required to complete the transaction, including: - * The Payer. (The account that pays for the transaction.) - * Other accounts involved in the execution of this transaction. +To perform this transaction, the Neon EVM emulator makes a request to Solana to get state data. The proxy requests a blockchain state from Solana and makes a test launch of N-tx using the Solana state. On the basis of the data received, Neon Proxy forms the new transaction according to Solana's rules. The transaction generated for Solana will contain the packaged N-tx, as well as the account data required to complete the transaction, including: + * The payer: the account that pays for the transaction + * Other accounts involved in the execution of this transaction Next, the transaction is forwarded inside Solana, where participants of the transaction are determined according to the account data. The data added includes details about people who initiate and take part in processing the transaction. The operator of the proxy is specified as the payer. The payer will be rewarded for completing the transaction. -Next, the transaction is transferred to Neon EVM, where its signature is checked according to Ethereum rules. If the signature is valid, the transaction will be transferred to the Solana blockchain for execution. Since testing of N-trx is carried out, it is possible to provide Solana with all the necessary information to run the execution of the N-trx in parallel. +Next, the transaction is transferred to Neon EVM, where its signature is checked according to Ethereum rules. If the signature is valid, the transaction will be transferred to the Solana blockchain for execution. Since testing of N-tx is carried out, it is possible to provide Solana with all the necessary information to run the execution of the N-tx in parallel. -## Benefits of the Neon Solution +## Benefits of the Neon solution Neon's solution offers the following benefits: * No changes or additional resources are required to implement dApps on Solana. diff --git a/docs/architecture/neon_evm_arch.md b/docs/architecture/neon_evm_arch.md index 1ae86719..03c37141 100644 --- a/docs/architecture/neon_evm_arch.md +++ b/docs/architecture/neon_evm_arch.md @@ -33,14 +33,14 @@ The components of the architecture are: ### Neon EVM User (user) Any user who has an account in Neon EVM with a balance in ETH, ERC-20, or ERC-721 tokens. -### Solana Transaction (S-trx) +### Solana Transaction (S-tx) A transaction formed according to Solana network rules with a signature produced by Solana rules. -### Neon Transaction (N-trx) +### Neon Transaction (N-tx) A transaction formed according to Ethereum rules with a signature produced by Ethereum rules. ### Neon EVM Client (client) -An application that has an EVM (Solidity, Vyper, etc.) bytecode contract loaded into Neon EVM. The application generates a transaction N-trx according to Ethereum rules and sends it to a proxy. Before sending N-trx, the client transfers the required funds to the Solana deposit to cover the costs of an operator. +An application that has an EVM (Solidity, Vyper, etc.) bytecode contract loaded into Neon EVM. The application generates a transaction N-tx according to Ethereum rules and sends it to a proxy. Before sending N-tx, the client transfers the required funds to the Solana deposit to cover the costs of an operator. ### Neon EVM Operator (operator) A role performed by a Solana account using a software tool. Within Neon EVM, an operator is provided with software in the form of a proxy in order to fulfill certain functions. The operator can deploy one or more proxies. The operator can also configure one proxy for multiple operators, as well as run several proxies with different settings. @@ -50,9 +50,9 @@ The software that an operator uses to do their job. Although the proxy is not a The proxy contains an EVM emulator that pre-tests the execution of the transaction. This testing determines the number of coins required on the operator's balance, as well as the current exchange rate of SOL to ETH. Each operator configures their proxy server with this course in mind. This relates to economic motivation. -A proxy converts N-trx into transactions under Solana rules. N-trx is signed by a user, while S-trxs are signed by an operator. The Neon transaction text is loaded from the received S-trxs into a separate account that is created in Solana. Neon EVM receives a command to execute the transaction located at the address of this account. +A proxy converts N-tx into transactions under Solana rules. N-tx is signed by a user, while S-txs are signed by an operator. The Neon transaction text is loaded from the received S-txs into a separate account that is created in Solana. Neon EVM receives a command to execute the transaction located at the address of this account. -More details on how the proxy converts a N-trx to multiple S-trxs can be found [here](https://neonlabsorg.medium.com/neon-web3-proxy-facilitating-seamless-transactions-on-neon-evm-b33c2041aa08). +More details on how the proxy converts a N-tx to multiple S-txs can be found [here](https://neonlabsorg.medium.com/neon-web3-proxy-facilitating-seamless-transactions-on-neon-evm-b33c2041aa08). Below is a list of the main Neon Web3 Proxy features that are implemented in the Neon EVM: * Receiving requests over Web3 API protocol @@ -165,9 +165,9 @@ The ERC-20 wrapper allows users to transfer their SPL tokens on the ERC-20 Balan ### Payment Queues **The Issue** -If the ERC-20 TKN contract contains only one map for all users and their balances, it can result in an issue: if the majority of users pay with ETH tokens, then the same contract will appear inside each N-trx, where the value will need to be changed. +If the ERC-20 TKN contract contains only one map for all users and their balances, it can result in an issue: if the majority of users pay with ETH tokens, then the same contract will appear inside each N-tx, where the value will need to be changed. -This will cause all N-trxs to line up “single file”, and they cannot be executed in parallel. This is because at the final step, the funds would be transferred from the user's balance to the operator's balance within one contract. +This will cause all N-txs to line up “single file”, and they cannot be executed in parallel. This is because at the final step, the funds would be transferred from the user's balance to the operator's balance within one contract. **The Solution** The default token type field is added to the Neon account along with the balance. This field provides a special option that will allow a user to select a type of token for payment. The ERC-20 wrapper can be used to transfer SPL tokens from outside to an operator's account. diff --git a/docs/developing/integrate/wallets/integrating_walletconnect.mdx b/docs/developing/integrate/wallets/integrating_walletconnect.mdx index 8e8fb844..4ca29d23 100644 --- a/docs/developing/integrate/wallets/integrating_walletconnect.mdx +++ b/docs/developing/integrate/wallets/integrating_walletconnect.mdx @@ -4,8 +4,9 @@ proofedDate: 20230427 iterationBy: HB includedInSite: true approvedBy: na -comment: TODO suggest a boilerplate ReactApp such as codepen be setup as an example to refer to -- this will then allow better support at Step 4 " connect your preferred wallet with Neon EVM DevNet within the WalletConnect interface. " to be included rather than just alluded to +comment: TODO suggest a boilerplate ReactApp such as codepen be setup as an example to refer to -- this will then allow better support at Step 4 " connect your preferred wallet with Neon EVM DevNet within the WalletConnect interface. " to be included rather than just alluded to. See also comments inline --- + import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import devnet from '@site/static/img/doc-images/developing/integrate/protocols/walletconnect/devnet.png'; @@ -16,7 +17,7 @@ import connected from '@site/static/img/doc-images/developing/integrate/protocol [WalletConnect](https://docs.walletconnect.com/2.0/) is a protocol providing a decentralized standard to connect Web3 wallets and dApps. -This guide lays out a step-by-step process to configure a React or HTML dApp on NeonEVM using WalletConnect's [Web3Modal SDK](https://docs.walletconnect.com/2.0/web3modal/about). +This guide lays out a step-by-step process to configure a React or HTML dApp on Neon EVM using WalletConnect's [Web3Modal SDK](https://docs.walletconnect.com/2.0/web3modal/about). Web3Modal is a library that allows users to connect to any dApp via the WalletConnect interface. @@ -54,6 +55,7 @@ From WalletConnect's project page: ### Step 3: Configure your app For this guide, we are configuring a React App. + 3.1 Install the required packages into your app: @@ -137,7 +139,7 @@ function App() { Start your application: `npm/yarn start` -You may now connect your preferred wallet with Neon EVM DevNet within the WalletConnect interface. +You may now connect your preferred wallet with Neon EVM Devnet within the WalletConnect interface. From 39e6e1e64b4da487e7a42bbb470d0295da7b7a43 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Tue, 19 Sep 2023 13:29:43 +0100 Subject: [PATCH 13/16] updates link --- docs/developing/dev_environment/local_proxy_remote_solana.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developing/dev_environment/local_proxy_remote_solana.md b/docs/developing/dev_environment/local_proxy_remote_solana.md index 01c74c04..189fbad3 100644 --- a/docs/developing/dev_environment/local_proxy_remote_solana.md +++ b/docs/developing/dev_environment/local_proxy_remote_solana.md @@ -14,7 +14,7 @@ The [Proxy local testing tutorial](/docs/operating/basic) describes how to perfo ## Prerequisites - [Docker](https://docs.docker.com/get-docker/); `docker-compose` v1.29 is recommended. -- Operator keys. Test [public keys are available](https://github.com/neonlabsorg/neon-evm/tree/develop/evm_loader/program/config). +- Operator keys. Test [public keys are available](https://github.com/neonlabsorg/proxy-model.py/tree/develop/proxy/operator-keypairs). ## Network configuration From 6610096a9cc3527e86a6ad612e84175c6f76845b Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Tue, 19 Sep 2023 15:07:36 +0100 Subject: [PATCH 14/16] removes links to non-existant pages --- docs/developing/deploy_facilities/using_remix.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developing/deploy_facilities/using_remix.md b/docs/developing/deploy_facilities/using_remix.md index f892059b..b946c2ea 100644 --- a/docs/developing/deploy_facilities/using_remix.md +++ b/docs/developing/deploy_facilities/using_remix.md @@ -7,7 +7,7 @@ approvedBy: na comment: --- -*This tutorial will show you step by step how to use [Remix](about/terminology.md#remix) and [MetaMask](about/terminology.md#metamask) to create and deploy a simple smart contract on Solana. Although the instructions use Solana's [Devnet](https://docs.solana.com/clusters#devnet), they may also be applicable to Solana's [Testnet](https://docs.solana.com/clusters#testnet) or Solana's [Mainnet Beta](https://docs.solana.com/clusters#mainnet-beta).* +*This tutorial demonstrates step by step how to use Remix and MetaMask to create and deploy a simple smart contract on Solana. Although the instructions use Solana's [Devnet](https://docs.solana.com/clusters#devnet), they may also be applicable to Solana's [Testnet](https://docs.solana.com/clusters#testnet) or Solana's [Mainnet Beta](https://docs.solana.com/clusters#mainnet-beta).* ## Requirements Before you start, make sure that the following is true: From 7fff446a37a71b4a264f4a873f5a4de9329219cd Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Tue, 19 Sep 2023 15:31:15 +0100 Subject: [PATCH 15/16] removes links to non-existant pages --- docs/clusters/solana_cluster.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/clusters/solana_cluster.md b/docs/clusters/solana_cluster.md index 93bf6f41..9d88b41f 100644 --- a/docs/clusters/solana_cluster.md +++ b/docs/clusters/solana_cluster.md @@ -2,9 +2,9 @@ title: Solana Clusters proofedDate: na iterationBy: na -includedInSite: true +includedInSite: false approvedBy: na -comment: checking this is on link-fixer branch +comment: todo find out whether this page should be included in site -- no sidebar for this --- A Solana cluster is a set of independently owned computers working together to verify the output of user-submitted programs. A Solana cluster can be utilized any time a user wants to preserve an immutable record of events in time or programmatic interpretations of those events. @@ -28,7 +28,7 @@ This is a permissionless, persistent cluster for early token holders and launch ### Synchronization Fast, reliable synchronization is one of the main challenges for achieving high throughput. Traditional blockchains synchronize on large chunks of transactions called blocks. As a consensus algorithm, they use *[Proof-of-Work](https://en.wikipedia.org/wiki/Proof_of_work)* or *[Proof-of-Stake](https://en.wikipedia.org/wiki/Proof_of_stake)*. -Unlike traditional synchronization methods, Solana takes a complete approach, which it calls *[Proof-of-History](https://docs.neonfoundation.io/docs/about/terminology/#proof-of-history-poh)*. Solana uses an optimistic method of processing blocks. (It was introduced in 1981 and is called [Optimistic Concurrency Control](https://en.wikipedia.org/wiki/Optimistic_concurrency_control).) +Unlike traditional synchronization methods, Solana takes a complete approach, which it calls *[Proof-of-History](https://docs.solana.com/cluster/synchronization)*. Solana uses an optimistic method of processing blocks. (It was introduced in 1981 and is called [Optimistic Concurrency Control](https://en.wikipedia.org/wiki/Optimistic_concurrency_control).) The peculiarity of this method is that Solana technically never sends a *[block](about/terminology.md#block)*, but uses the term to describe the sequence of entries that validators vote on to achieve *confirmation*. By processing the transactions optimistically, there is effectively no delay between the time the last entry is received and the time when the node can vote. In the event consensus is not achieved, a node simply rolls back its state. From 6223601c68ebcdb8b3e7b7c7a4c89ad346f0a305 Mon Sep 17 00:00:00 2001 From: m4sterbunny Date: Tue, 19 Sep 2023 15:56:37 +0100 Subject: [PATCH 16/16] removes links to non-existant pages --- docs/clusters/solana_cluster.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/clusters/solana_cluster.md b/docs/clusters/solana_cluster.md index 9d88b41f..843797d4 100644 --- a/docs/clusters/solana_cluster.md +++ b/docs/clusters/solana_cluster.md @@ -29,7 +29,7 @@ This is a permissionless, persistent cluster for early token holders and launch ### Synchronization Fast, reliable synchronization is one of the main challenges for achieving high throughput. Traditional blockchains synchronize on large chunks of transactions called blocks. As a consensus algorithm, they use *[Proof-of-Work](https://en.wikipedia.org/wiki/Proof_of_work)* or *[Proof-of-Stake](https://en.wikipedia.org/wiki/Proof_of_stake)*. Unlike traditional synchronization methods, Solana takes a complete approach, which it calls *[Proof-of-History](https://docs.solana.com/cluster/synchronization)*. Solana uses an optimistic method of processing blocks. (It was introduced in 1981 and is called [Optimistic Concurrency Control](https://en.wikipedia.org/wiki/Optimistic_concurrency_control).) -The peculiarity of this method is that Solana technically never sends a *[block](about/terminology.md#block)*, but uses the term to describe the sequence of entries that validators vote on to achieve *confirmation*. By processing the transactions optimistically, there is effectively no delay between the time the last entry is received and the time when the node can vote. In the event consensus is not achieved, a node simply rolls back its state. +The peculiarity of this method is that Solana technically never sends a *block*, but uses the term to describe the sequence of entries that validators vote on to achieve *confirmation*. By processing the transactions optimistically, there is effectively no delay between the time the last entry is received and the time when the node can vote. In the event consensus is not achieved, a node simply rolls back its state. > **More details**