diff --git a/.gitmodules b/.gitmodules index 8fcdb2c43..fd761421b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,15 +1,15 @@ [submodule "snarkOS"] path = snarkOS - url = https://github.com/AleoHQ/snarkOS.git + url = https://github.com/ProvableHQ/snarkOS.git [submodule "leo"] path = leo - url = https://github.com/AleoHQ/leo + url = https://github.com/ProvableHQ/leo [submodule "aleo-setup"] path = aleo-setup - url = https://github.com/AleoHQ/aleo-setup + url = https://github.com/ProvableHQ/aleo-setup [submodule "snarkVM"] path = snarkVM - url = https://github.com/AleoHQ/snarkVM.git + url = https://github.com/ProvableHQ/snarkVM.git [submodule "sdk"] path = sdk - url = https://github.com/AleoHQ/sdk.git + url = https://github.com/ProvableHQ/sdk.git diff --git a/README.md b/README.md index b354cbb63..f0dc69fac 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ Website - +

## πŸŽ‰ Welcome to Aleo. @@ -32,44 +32,44 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - + + diff --git a/documentation updates aleo ambassadors/src/build/installation/installation.md b/documentation updates aleo ambassadors/src/build/installation/installation.md index 9f7289392..59bf01840 100644 --- a/documentation updates aleo ambassadors/src/build/installation/installation.md +++ b/documentation updates aleo ambassadors/src/build/installation/installation.md @@ -49,11 +49,11 @@ Note: After installation, if your `git` and `rustc` command doesn't work, try to Clone the `snarkOS` repository ```bash -git clone https://github.com/AleoHQ/snarkOS.git --depth 1 +git clone https://github.com/ProvableHQ/snarkOS.git --depth 1 cd snarkOS # Switch to the mainnet branch -git checkout mainnet +git checkout mainnet [For Ubuntu users] A helper script to install dependencies is available. From the snarkOS directory, run: @@ -67,7 +67,7 @@ Note that the dot at the end of the command is required. cargo install --path . ``` -To test if your snarkOS is working, try typing +To test if your snarkOS is working, try typing ```bash snarkos ``` @@ -77,7 +77,7 @@ You should see something like: Please ensure ports 4133/tcp and 3033/tcp are open on your router and OS firewall. -For more details about how to use `snarkOS` CLI, check out [this link](https://github.com/AleoHQ/snarkOS). +For more details about how to use `snarkOS` CLI, check out [this link](https://github.com/ProvableHQ/snarkOS). If you would like to run a local devnet, run the command @@ -85,20 +85,20 @@ If you would like to run a local devnet, run the command ./devnet.sh ``` -You would however, first need to install tmux. Instructions can be found on the github [repo](https://github.com/AleoHQ/snarkOS) +You would however, first need to install tmux. Instructions can be found on the github [repo](https://github.com/ProvableHQ/snarkOS) ### Install SnarkVM -- Install snarkVM from the github [repo](https://github.com/AleoHQ/snarkvm) +- Install snarkVM from the github [repo](https://github.com/ProvableHQ/snarkvm) ``` # Download the source code -git clone https://github.com/AleoHQ/snarkvm && cd snarkvm +git clone https://github.com/ProvableHQ/snarkvm && cd snarkvm # Install snarkVM $ cargo install --path . ``` -To test if snarkVM was installed successfully go to the command line and type +To test if snarkVM was installed successfully go to the command line and type ```bash snarkvm ``` @@ -112,7 +112,7 @@ Clone the `leo` repository ```bash # Download the source code -git clone https://github.com/AleoHQ/leo +git clone https://github.com/ProvableHQ/leo cd leo ``` @@ -125,7 +125,7 @@ cargo install --path . That will generate the executable ~/.cargo/bin/leo. -To test if leo was installed successfully, try typing +To test if leo was installed successfully, try typing ```bash leo ``` @@ -134,7 +134,7 @@ You should see something like: ![leo installation](./images/leo-install-success.png) For more details about how to use `leo` Cli, check out [this link](https://developer.aleo.org/leo/commands) ---- +--- ## Docker @@ -156,7 +156,7 @@ docker run -it 0xaragondocker/leo_docker /bin/bash ## Windows Installation with Git Bash ### Rust Installation -Rust runs on many platforms, and there are many ways to install Rust. This guide describes installation via rustup, a tool that manages multiple Rust toolchains in a consistent way across all platforms Rust supports. +Rust runs on many platforms, and there are many ways to install Rust. This guide describes installation via rustup, a tool that manages multiple Rust toolchains in a consistent way across all platforms Rust supports. - On Windows, download and run [rustup-init.exe](https://static.rust-lang.org/rustup/dist/i686-pc-windows-gnu/rustup-init.exe) - rustup-init can be configured interactively, and all options can additionally be controlled by command-line arguments, which can be passed through the shell script. Pass --help to rustup-init as follows to display the arguments rustup-init accepts: ``` @@ -164,7 +164,7 @@ Rust runs on many platforms, and there are many ways to install Rust. This guide ``` - The above command needs to executed using WSL - If you prefer not to use the shell script, you may directly download rustup-init for windows [here](https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe) -- verify rust installation by runnin ```rustc --version``` in wsl +- verify rust installation by runnin ```rustc --version``` in wsl ### Git @@ -186,7 +186,7 @@ Rust runs on many platforms, and there are many ways to install Rust. This guide - In the "Workloads" tab enable "Desktop development with C++" ![Desktop Development with C++](./images/desktop-development-c++.png) -- Click Modify to install +- Click Modify to install ### LLVM Installation @@ -207,23 +207,23 @@ Rust runs on many platforms, and there are many ways to install Rust. This guide Using git bash, clone the `snarkOS` repository ```bash -git clone https://github.com/AleoHQ/snarkOS.git --depth 1 +git clone https://github.com/ProvableHQ/snarkOS.git --depth 1 cd snarkOS cargo install --locked --path . ``` ### Install SnarkVM -Using git bash, install snarkVM from the github [repo](https://github.com/AleoHQ/snarkvm) +Using git bash, install snarkVM from the github [repo](https://github.com/ProvableHQ/snarkvm) ``` # Download the source code -git clone https://github.com/AleoHQ/snarkvm && cd snarkvm +git clone https://github.com/ProvableHQ/snarkvm && cd snarkvm # Install snarkVM $ cargo install --path . ``` -To test if snarkVM was installed successfully go to the command line and type +To test if snarkVM was installed successfully go to the command line and type ```bash snarkvm ``` @@ -238,7 +238,7 @@ This is similar to the Linux/MacOS instructions. Clone the `leo` repository using git bash ```bash # Download the source code -git clone https://github.com/AleoHQ/leo +git clone https://github.com/ProvableHQ/leo cd leo ``` @@ -251,7 +251,7 @@ cargo install --path . That will generate the executable ~/.cargo/bin/leo. -To test if leo was installed successfully, try typing +To test if leo was installed successfully, try typing ```bash leo ``` @@ -280,7 +280,7 @@ cargo install --path . ## Install `leo` IDE Syntax Highlighting: -To improve the developer experience, Aleo has provided extensions for syntax highlighting for your popular code editors. +To improve the developer experience, Aleo has provided extensions for syntax highlighting for your popular code editors. - [VSCode](https://code.visualstudio.com/download) - Install [Leo for VSCode](https://marketplace.visualstudio.com/items?itemName=aleohq.leo-extension) from VSCode marketplace. - The correct extension ID is aleohq.leo-extension, and the description should state "the official VSCode extension for Leo". @@ -293,7 +293,7 @@ To improve the developer experience, Aleo has provided extensions for syntax hig ## Aleo Wallet Installation Using a chrome browser, install either of these chrome extensions to get an Aleo wallet. You can also request for testnet tokens from these wallets. -- [Leo Wallet](https://chromewebstore.google.com/detail/leo-wallet/nebnhfamliijlghikdgcigoebonmoibm) +- [Leo Wallet](https://chromewebstore.google.com/detail/leo-wallet/nebnhfamliijlghikdgcigoebonmoibm) - [Puzzle Wallet](https://chromewebstore.google.com/detail/puzzle-aleo-wallet/fdchdcpieegfofnofhgdombfckhbcokj) --- @@ -302,7 +302,7 @@ Using a chrome browser, install either of these chrome extensions to get an Aleo 1) Open terminal 2) Go to the folder where you cloned the snarkos repository [earlier](#install-snarkos). -3) run the command +3) run the command ``` ./devnet.sh ``` @@ -316,7 +316,7 @@ Using a chrome browser, install either of these chrome extensions to get an Aleo # Interacting with your program on testnet ## Build Your Program -First build you program by running +First build you program by running ``` leo run {$TRANSITION_NAME} {$INPUTS} ``` diff --git a/documentation updates aleo ambassadors/src/learn/concepts/storage.md b/documentation updates aleo ambassadors/src/learn/concepts/storage.md index cb4cf15da..3f29f2301 100644 --- a/documentation updates aleo ambassadors/src/learn/concepts/storage.md +++ b/documentation updates aleo ambassadors/src/learn/concepts/storage.md @@ -67,7 +67,7 @@ Nonce The serial number nonce is used to create a unique identifier for each record, and is computed via a PRF evaluation of the address secret key ask of the owner and the record's serial number. -An example record can be shown below by calling the mint_private transition from the token workshop: +An example record can be shown below by calling the mint_private transition from the token workshop: ```bash { owner: aleo13ssze66adjjkt795z9u5wpq8h6kn0y2657726h4h3e3wfnez4vqsm3008q.private, @@ -115,7 +115,7 @@ The Alice's wallet is: `aleo1mgfq6g40l6zkhsm063n3uhr43qk5e0zsua5aszeq5080dsvlcvxsn0rrau` The Bob's wallet is: -`aleo1r0dry2tlhjt0yplctz85692kjpqsadn7xgxsmrehkasykjxynypqza3fpl` +`aleo1r0dry2tlhjt0yplctz85692kjpqsadn7xgxsmrehkasykjxynypqza3fpl` We must start by defining our `record` named 'token. @@ -126,7 +126,7 @@ We must start by defining our `record` named 'token. amount: u64, } -Then, we will be able to mint 50 tokens to Alice's wallet. Full [token example](https://github.com/AleoHQ/workshop/blob/master/token/src/main.leo) can be found in token workshop. For now, we will cover the record outputs. +Then, we will be able to mint 50 tokens to Alice's wallet. Full [token example](https://github.com/ProvableHQ/workshop/blob/master/token/src/main.leo) can be found in token workshop. For now, we will cover the record outputs. First, alice mints 50 tokens with `mint_private` transition and gets the following output: ```bash @@ -218,9 +218,3 @@ The inputs β€˜input’ and β€˜input1’ are the records that are imported from t In the example, a record generated by credits.aleo is again spent by the program itself. While our example program is still unable to consume the record, it can work with a record from a different program. By using external records, programs can interact with each other's records without breaking privacy and eliminating the limitations on developing dApps. - - - - - - diff --git a/documentation updates aleo ambassadors/src/learn/network/provers.md b/documentation updates aleo ambassadors/src/learn/network/provers.md index 60c14bdf2..87a412636 100644 --- a/documentation updates aleo ambassadors/src/learn/network/provers.md +++ b/documentation updates aleo ambassadors/src/learn/network/provers.md @@ -8,7 +8,7 @@ Provers are an integral part of the Aleo network but do not participate in Aleo' In the long term, the *CoinbaseReward* incentive that Provers can obtain is directly proportional to their computational power relative to the entire network. The economic incentive for Provers is similar to PoW in Bitcoin, but unlike Bitcoin, Aleo's network doesn't employ a winner-takes-all strategy. As long as the *ProverSolution* satisfies the *ProofTarget*, it is accepted by the network. This approach ensures fairer and more stable rewards for Provers. It's noteworthy that unlike the *BlockReward* for validators, the *CoinbaseReward* decreases over time, reducing by 10% annually until there are no *CoinbaseReward* incentives after 10 years. -> PuzzleReward = CoinbaseReward * 2/3 +> PuzzleReward = CoinbaseReward * 2/3 > > BlockReward = 23.8 + CoinbaseReward * 1 / 3 > @@ -26,4 +26,4 @@ Besides requiring ProverSolutions to be valid, the network also demands that the ### Become a Prover Node -Becoming a Prover node does not require staking or authorization, anyone can [start a Prover node](https://github.com/AleoHQ/snarkOS?tab=readme-ov-file#32-run-an-aleo-prover). +Becoming a Prover node does not require staking or authorization, anyone can [start a Prover node](https://github.com/ProvableHQ/snarkOS?tab=readme-ov-file#32-run-an-aleo-prover). diff --git a/documentation updates aleo ambassadors/src/learn/zkcloud/snarkos_build_guide.md b/documentation updates aleo ambassadors/src/learn/zkcloud/snarkos_build_guide.md index 116d596ba..4f9172af6 100644 --- a/documentation updates aleo ambassadors/src/learn/zkcloud/snarkos_build_guide.md +++ b/documentation updates aleo ambassadors/src/learn/zkcloud/snarkos_build_guide.md @@ -47,7 +47,7 @@ Before beginning, please ensure your machine has `Rust v1.66+` installed. Instru Start by cloning this GitHub repository: ``` -git clone https://github.com/AleoHQ/snarkOS.git --depth 1 +git clone https://github.com/ProvableHQ/snarkOS.git --depth 1 ``` Next, move into the `snarkOS` directory: @@ -184,4 +184,4 @@ OPTIONS: 2. Sign a message with your private key using `snarkos account sign --raw -m "Message" --private-key-file=` 3. Verify your signature with `snarkos account verify --raw -m "Message" -s sign1SignatureHere -a aleo1YourAccountAddress` -Note, using the `--raw` flag with the command will sign plaintext messages as bytes rather than [Aleo](https://developer.aleo.org/aleo/language#data-types-and-values) values such as `1u8` or `100field`. \ No newline at end of file +Note, using the `--raw` flag with the command will sign plaintext messages as bytes rather than [Aleo](https://developer.aleo.org/aleo/language#data-types-and-values) values such as `1u8` or `100field`. diff --git a/documentation updates aleo ambassadors/src/learn/zkcloud/snarkvm_build_guide.md b/documentation updates aleo ambassadors/src/learn/zkcloud/snarkvm_build_guide.md index b891916ff..2332a4550 100644 --- a/documentation updates aleo ambassadors/src/learn/zkcloud/snarkvm_build_guide.md +++ b/documentation updates aleo ambassadors/src/learn/zkcloud/snarkvm_build_guide.md @@ -33,7 +33,7 @@ Alternatively, you can install `snarkvm` by building from the source code as fol ```bash # Download the source code -git clone https://github.com/AleoHQ/snarkvm && cd snarkvm +git clone https://github.com/ProvableHQ/snarkvm && cd snarkvm # Install snarkVM $ cargo install --path . @@ -148,4 +148,3 @@ To update snarkVM and suppress outputs to terminal run: ``` snarkvm update --quiet ``` - diff --git a/documentation/00_aleo_overview.md b/documentation/00_aleo_overview.md index ff72a3f69..3de9a92bb 100644 --- a/documentation/00_aleo_overview.md +++ b/documentation/00_aleo_overview.md @@ -15,7 +15,7 @@ Aleo instructions are compiled into AVM opcodes that can be executed by the Aleo Install snarkVM to compile and execute Aleo instructions. :::info -snarkVM is currently in active development. Please monitor the repository on [**GitHub**](https://github.com/AleoHQ/snarkVM) for possibly breaking changes. +snarkVM is currently in active development. Please monitor the repository on [**GitHub**](https://github.com/ProvableHQ/snarkVM) for possibly breaking changes. ::: ## Installing snarkVM @@ -36,7 +36,7 @@ Read the full list of supported [AVM opcodes](./aleo/04_opcodes.md). Check your program or compiler implementation against the [Aleo instructions grammar](./aleo/06_grammar.md). -Study the formal [ABNF grammar specification](https://github.com/AleoHQ/grammars) for the full formal syntax of Aleo instructions. +Study the formal [ABNF grammar specification](https://github.com/ProvableHQ/grammars) for the full formal syntax of Aleo instructions. ## Command Line Interface Documentation @@ -53,4 +53,4 @@ The snarkVM CLI provides a suite of commands to make programming in Aleo instruc ## Additional Material -Install Aleo instructions for your favorite code [**editor**](./aleo/07_tooling.md). \ No newline at end of file +Install Aleo instructions for your favorite code [**editor**](./aleo/07_tooling.md). diff --git a/documentation/00_getting_started.md b/documentation/00_getting_started.md index 224a59b0a..c72a60d6c 100644 --- a/documentation/00_getting_started.md +++ b/documentation/00_getting_started.md @@ -9,7 +9,7 @@ performant, secure, and private. Aleo introduces an application runtime environm to compile, execute, and finalize its state autonomously. :::tip -# What's new on Aleo? +# What's new on Aleo? ### [**πŸ”§ Getting Ready for Testnet Beta**](./leo/16_testnet_beta.md) - A guide on updating your Leo applications for Testnet Beta. ### [**🀝 Leo Core Developers Call**](./leo/15_core_devs_call.md) - Collaborate with the Leo development team and ecosystem on the future of Leo. ### [**βš›οΈ Create Aleo App**](./sdk/create-leo-app/01_create_leo_app.md) - A full stack application written in Typescript using Leo and React. @@ -33,10 +33,10 @@ to compile, execute, and finalize its state autonomously. ### 1.3 Install Leo ```bash -curl -L https://raw.githubusercontent.com/AleoHQ/workshop/master/install.sh | sh +curl -L https://raw.githubusercontent.com/ProvableHQ/workshop/master/install.sh | sh ``` -Learning Leo is the fastest way to develop private applications on Aleo. +Learning Leo is the fastest way to develop private applications on Aleo. @@ -76,7 +76,7 @@ If you're interested in learning more about Aleo: -πŸ™ | GitHub ~ **https://github.com/AleoHQ** +πŸ™ | GitHub ~ **https://github.com/ProvableHQ** πŸ“„ | Developer Documentation ~ **https://developer.aleo.org/** diff --git a/documentation/00_leo_overview.md b/documentation/00_leo_overview.md index 7d31409b2..89f790ab6 100644 --- a/documentation/00_leo_overview.md +++ b/documentation/00_leo_overview.md @@ -7,7 +7,7 @@ sidebar_label: Overview Welcome to the Leo programming language. Leo is a statically-typed programming language for private applications. Designed for intuitive Aleo blockchain development, Leo lays the foundation for a private, decentralized ecosystem. :::info -The Leo language is currently in active development. Please monitor the repository on [**GitHub**](https://github.com/AleoHQ/leo) for possibly breaking changes. +The Leo language is currently in active development. Please monitor the repository on [**GitHub**](https://github.com/ProvableHQ/leo) for possibly breaking changes. ::: ## Installing Leo @@ -30,7 +30,7 @@ For a quick reference of Leo syntax, see the [**Leo Cheat Sheet**](./leo/08_chea ## Formal Language Documentation -A formal ABNF grammar specification for the syntax of Leo can be viewed [here](https://github.com/AleoHQ/grammars/blob/master/leo.abnf). +A formal ABNF grammar specification for the syntax of Leo can be viewed [here](https://github.com/ProvableHQ/grammars/blob/master/leo.abnf). ## Command Line Interface Documentation @@ -55,7 +55,7 @@ For additional developer resources such as examples and community projects, see Is your Leo code formatted correctly? Check out the [**Style Guide**](./leo/07_resources.md#style-guide) and [**Common Patterns**](./leo/07_resources.md#common-patterns) for the official guidelines. -Found a bug? Have an idea for a feature? File an issue on the [**Leo GitHub**](https://github.com/AleoHQ/leo/issues/new/choose). +Found a bug? Have an idea for a feature? File an issue on the [**Leo GitHub**](https://github.com/ProvableHQ/leo/issues/new/choose). See the [**Contributing Guide**](./leo/07_resources.md#contributing) for more information. diff --git a/documentation/00_overview.md b/documentation/00_overview.md index db93f63e3..24a444ee4 100644 --- a/documentation/00_overview.md +++ b/documentation/00_overview.md @@ -28,11 +28,11 @@ An index of all pages available in this documentation. ### Chapter 2: Leo by Example - [Auction](./leo/09_auction.md) -- [Basic Bank](https://github.com/AleoHQ/workshop/tree/master/basic_bank) -- [Vote](https://github.com/AleoHQ/workshop/tree/master/vote) -- [Token](https://github.com/AleoHQ/workshop/tree/master/token) -- [TicTacToe](https://github.com/AleoHQ/workshop/tree/master/tictactoe) -- [Battleship](https://github.com/AleoHQ/workshop/tree/master/battleship) +- [Basic Bank](https://github.com/ProvableHQ/workshop/tree/master/basic_bank) +- [Vote](https://github.com/ProvableHQ/workshop/tree/master/vote) +- [Token](https://github.com/ProvableHQ/workshop/tree/master/token) +- [TicTacToe](https://github.com/ProvableHQ/workshop/tree/master/tictactoe) +- [Battleship](https://github.com/ProvableHQ/workshop/tree/master/battleship) ### Chapter 3: Aleo Instructions diff --git a/documentation/00_sdk_overview.md b/documentation/00_sdk_overview.md index 88b466fd0..146e43213 100644 --- a/documentation/00_sdk_overview.md +++ b/documentation/00_sdk_overview.md @@ -26,10 +26,10 @@ The official Aleo SDK providing Javascript/Typescript tools for creating zero kn ### ⚑ Build your own app -Start here with the [documentation](./sdk/typescript/00_sdk_overview.md) and follow the instructions to install the [Aleo SDK](https://github.com/AleoHQ/sdk/tree/testnet3/sdk#readme) to get started building your +Start here with the [documentation](./sdk/typescript/00_sdk_overview.md) and follow the instructions to install the [Aleo SDK](https://github.com/ProvableHQ/sdk/tree/testnet3/sdk#readme) to get started building your first zero knowledge web app. -#### Source: [`sdk/sdk`](https://github.com/AleoHQ/sdk/tree/testnet3/sdk) +#### Source: [`sdk/sdk`](https://github.com/ProvableHQ/sdk/tree/testnet3/sdk) ## 2. [Create-leo-App](./sdk/create-leo-app/00_app_installation.md) - Zero-Knowledge Web App Examples @@ -60,14 +60,14 @@ Aleo Wasm is a Rust crate which compiles Aleo code responsible for creating and WebAssembly. When compiled with `wasm-pack` JavaScript bindings are generated for the WebAssembly allowing Aleo zero -knowledge programs to be used in the browser and NodeJS. This package is available on NPM (linked above). The +knowledge programs to be used in the browser and NodeJS. This package is available on NPM (linked above). The [documentation](./sdk/wasm/00_wasm_installation.md) provides instructions for compiling this [crate](https://github.com/ProvableHQ/sdk/tree/testnet3/wasm) and using it in web projects for those interested in building from source. ❗ Currently program execution is only available in web Browsers. However, account, program and data management within NodeJS is functional. -Source: [`sdk/wasm`](https://github.com/AleoHQ/sdk/tree/testnet3/wasm) +Source: [`sdk/wasm`](https://github.com/ProvableHQ/sdk/tree/testnet3/wasm) ## 4. Aleo Python SDK - Zero Knowledge Algorithms in Python and Zero Knowledge Machine Learning @@ -76,11 +76,11 @@ The official Aleo Python SDK providing tools for creating zero knowledge apps. I * The **aleo** library, which uses foreign function interfaces to bring snarkVM functionalities to Python. * The **zkml** library, which transpiles scikit-learn machine learning models into Leo programs for inference. -Both libraries are in an early development stage. They can be installed through `pip install aleo` respectively `pip install zkml`. The +Both libraries are in an early development stage. They can be installed through `pip install aleo` respectively `pip install zkml`. The [documentation on the aleo library](./sdk/python/00_aleo_sdk.md) and the [documentation on the zkml library](./sdk/python/01_zkml_transpiler.md) provide more information on installation and usage. -Source: [`python-sdk`](https://github.com/AleoHQ/python-sdk) +Source: [`python-sdk`](https://github.com/ProvableHQ/python-sdk) ## πŸ“š Documentation diff --git a/documentation/advanced/dive-into-avm/00_overview.md b/documentation/advanced/dive-into-avm/00_overview.md index db26d96f0..ba79f7c47 100644 --- a/documentation/advanced/dive-into-avm/00_overview.md +++ b/documentation/advanced/dive-into-avm/00_overview.md @@ -8,7 +8,7 @@ The Aleo Virtual Machine (AVM) is a computational platform integral to the Aleo After constructing the **R1CS**, corresponding proofs are generated using a variation of **Marlin** algorithm called **Varuna**. This approach allows for succinct verification of arbitrary computations by leveraging a **universal** and **updatable** Structured Reference String (**SRS**). -It was formalised and implemented in the Aleo Network as [ARC-0002](https://github.com/AleoHQ/ARCs/tree/master/arc-0002). +It was formalised and implemented in the Aleo Network as [ARC-0002](https://github.com/ProvableHQ/ARCs/tree/master/arc-0002). ### **Key Features of the AVM** diff --git a/documentation/aleo/01_installation.md b/documentation/aleo/01_installation.md index eddf6b241..1f0143d2e 100644 --- a/documentation/aleo/01_installation.md +++ b/documentation/aleo/01_installation.md @@ -26,7 +26,7 @@ You can install snarkVM by building from the source code as follows: ```bash # Download the source code -git clone https://github.com/AleoHQ/snarkVM +git clone https://github.com/ProvableHQ/snarkVM cd snarkvm # Build in release mode @@ -45,5 +45,3 @@ snarkvm Dive into some code with [**Hello Aleo**](02_hello.md). ::: - - diff --git a/documentation/aleo/07_tooling.md b/documentation/aleo/07_tooling.md index 33f0ba4ff..0448ba087 100644 --- a/documentation/aleo/07_tooling.md +++ b/documentation/aleo/07_tooling.md @@ -5,11 +5,11 @@ sidebar_label: Tooling --- :::info -If you have installed a Leo syntax [plugin](../leo/06_tooling.md) +If you have installed a Leo syntax [plugin](../leo/06_tooling.md) then you should already be able to see syntax highlighting for `.aleo` Aleo instructions. ::: -Aleo maintains several syntax highlighting implementations across different platforms. If you do not see your favorite editor on this list, please reach out on [GitHub](https://github.com/AleoHQ/welcome/issues/new). +Aleo maintains several syntax highlighting implementations across different platforms. If you do not see your favorite editor on this list, please reach out on [GitHub](https://github.com/ProvableHQ/welcome/issues/new). 1. [Sublime Text](#sublime-text). 2. [Visual Studio Code](#vscode). @@ -17,7 +17,7 @@ Aleo maintains several syntax highlighting implementations across different plat ## Sublime Text -![](./images/sublime.png) +![](./images/sublime.png) Download the editor here: https://www.sublimetext.com/download. Aleo instructions support for Sublime's LSP plugin is provided through a language-server. @@ -32,7 +32,7 @@ Follow these steps to toggle the `Aleo instructions` syntax highlighter. 1. Open `Sublime Text`. 2. From Settings > Select Color Scheme... > LSP-leo -3. This will also allow you to see syntax highlighting for Aleo instructions. +3. This will also allow you to see syntax highlighting for Aleo instructions. ## VSCode @@ -41,14 +41,14 @@ Download the editor here: https://code.visualstudio.com/download. ### Install -1. Install [Leo for VSCode](https://marketplace.visualstudio.com/items?itemName=aleohq.leo-extension) from VSCode marketplace. +1. Install [Leo for VSCode](https://marketplace.visualstudio.com/items?itemName=aleohq.leo-extension) from VSCode marketplace. 2. The correct extension ID is `aleohq.leo-extension`, and the description should state "the official VSCode extension for Leo". ### Usage 1. Open `VSCode`. 2. Go to Settings > Extensions or use the left side panel Extensions button to enable the Leo plugin. -3. This will also allow you to see syntax highlighting for Aleo instructions. +3. This will also allow you to see syntax highlighting for Aleo instructions. ## IntelliJ @@ -59,4 +59,4 @@ Download the editor here: https://www.jetbrains.com/idea/download/. 1. Download the [Aleo Developer Plugin](https://plugins.jetbrains.com/plugin/19890-aleo-developer) from JetBrains marketplace. 2. Click on the gear icon in the upper right > Plugins > gear icon up top > Install Plugin from Disk > Select the downloaded zip file -3. This will also allow you to see syntax highlighting for Aleo instructions. \ No newline at end of file +3. This will also allow you to see syntax highlighting for Aleo instructions. diff --git a/documentation/leo/01_installation.md b/documentation/leo/01_installation.md index 6fc006252..b833d006f 100644 --- a/documentation/leo/01_installation.md +++ b/documentation/leo/01_installation.md @@ -17,12 +17,12 @@ Download the latest Leo release using a pre-built installer for your platform, a {label: 'All other platforms', value: 'all_releases'} ]}> - + Install Leo for MacOS M1 - + Browse all Leo releases here @@ -57,7 +57,7 @@ You can build and install Leo from the source code as follows: ``` # Download the source code -git clone https://github.com/AleoHQ/leo +git clone https://github.com/ProvableHQ/leo cd leo # Build and install @@ -74,8 +74,8 @@ leo ## 3. IDE Syntax Highlighting -Aleo maintains syntax highlighting implementations across different platforms. -If you do not see your favorite editor on this list, please reach out on [GitHub](https://github.com/AleoHQ/welcome/issues/new). +Aleo maintains syntax highlighting implementations across different platforms. +If you do not see your favorite editor on this list, please reach out on [GitHub](https://github.com/ProvableHQ/welcome/issues/new). 1. [Visual Studio Code](06_tooling.md#vs-code) 2. [Sublime Text](06_tooling.md#sublime-text) diff --git a/documentation/leo/06_tooling.md b/documentation/leo/06_tooling.md index 76f2cbbfc..7370ba622 100644 --- a/documentation/leo/06_tooling.md +++ b/documentation/leo/06_tooling.md @@ -4,7 +4,7 @@ title: Tooling for Leo sidebar_label: Tooling --- -Aleo maintains syntax highlighting implementations across different platforms. If you do not see your favorite editor on this list, please reach out on [GitHub](https://github.com/AleoHQ/welcome/issues/new). +Aleo maintains syntax highlighting implementations across different platforms. If you do not see your favorite editor on this list, please reach out on [GitHub](https://github.com/ProvableHQ/welcome/issues/new). 1. [Sublime Text](#sublime-text) 2. [Visual Studio Code](#vs-code) @@ -35,7 +35,7 @@ Download the editor here: https://code.visualstudio.com/download. ### Install -1. Install [Leo for VSCode](https://marketplace.visualstudio.com/items?itemName=aleohq.leo-extension) from VSCode marketplace. +1. Install [Leo for VSCode](https://marketplace.visualstudio.com/items?itemName=aleohq.leo-extension) from VSCode marketplace. 2. The correct extension ID is `aleohq.leo-extension`, and the description should state "the official VSCode extension for Leo". ### Usage @@ -51,4 +51,4 @@ Download the editor here: https://www.jetbrains.com/idea/download/. ### Install 1. Download the [Aleo Developer Plugin](https://plugins.jetbrains.com/plugin/19890-aleo-developer) from JetBrains marketplace. -2. Click on the gear icon in the upper right > Plugins > gear icon up top > Install Plugin from Disk > Select the downloaded zip file +2. Click on the gear icon in the upper right > Plugins > gear icon up top > Install Plugin from Disk > Select the downloaded zip file diff --git a/documentation/leo/07_resources.md b/documentation/leo/07_resources.md index e569966e7..96c1c6a37 100644 --- a/documentation/leo/07_resources.md +++ b/documentation/leo/07_resources.md @@ -7,7 +7,7 @@ title: Developer Resources πŸ“œ A starter guide to build applications on Aleo πŸ“œ -https://github.com/AleoHQ/workshop +https://github.com/ProvableHQ/workshop ## 2. The Awesome Aleo Repository @@ -151,7 +151,7 @@ if (condition) { return a } else { return b -} +} ``` ```leo title="Alternative:" @@ -183,13 +183,13 @@ This greatly increases the constraint numbers and slows down the circuit. Thank you for helping make Leo better! -Before contributing, please view the [Contributor Code of Conduct](https://github.com/AleoHQ/leo/blob/master/CONTRIBUTING.md). +Before contributing, please view the [Contributor Code of Conduct](https://github.com/ProvableHQ/leo/blob/master/CONTRIBUTING.md). By participating in this project - In the issues, pull requests, or Gitter channels - you agree to abide by the terms. ## Report an Issue -To report an issue, please use the [GitHub issues tracker](https://github.com/AleoHQ/leo/issues). When reporting issues, please mention the following details: +To report an issue, please use the [GitHub issues tracker](https://github.com/ProvableHQ/leo/issues). When reporting issues, please mention the following details: - Which version of Leo you are using. - What was the source code (if applicable). @@ -235,7 +235,7 @@ Then when running the test command, make sure you have the environment variable ### Grammar -[The `grammars` repository](https://github.com/AleoHQ/grammars) contains a file [`leo.abnf`](https://github.com/AleoHQ/grammars/blob/master/leo.abnf) that has the Leo grammar rules in the ABNF format. +[The `grammars` repository](https://github.com/ProvableHQ/grammars) contains a file [`leo.abnf`](https://github.com/ProvableHQ/grammars/blob/master/leo.abnf) that has the Leo grammar rules in the ABNF format. If your changes affect a grammar rule, we may ask you to modify it in that `.abnf` file. We appreciate your hard work! diff --git a/documentation/leo/16_testnet_beta.md b/documentation/leo/16_testnet_beta.md index 8cb3edb19..3f836fa44 100644 --- a/documentation/leo/16_testnet_beta.md +++ b/documentation/leo/16_testnet_beta.md @@ -1,5 +1,5 @@ --- -id: testnetbeta +id: testnetbeta title: Getting Ready for Testnet Beta sidebar_label: Testnet Beta --- @@ -15,7 +15,7 @@ We are about to reach a huge milestone in Aleo's developement. Testnet Beta is a - **Leo v.2.0.0 is the first Testnet Beta compatible version.** (In the meantime, you can build from source on the `testnet-beta` branch of the Leo repository.) For additional support, please feel free to: -- File an issue [here](https://github.com/AleoHQ/leo/issues/new/choose). +- File an issue [here](https://github.com/ProvableHQ/leo/issues/new/choose). - Post in the #leo-language Discord [channel](https://discord.com/invite/aleo). - Attend the Leo Core Devs Call / Engineering Office Hours. @@ -31,13 +31,13 @@ We've included a check-list of features that are deprecated in Leo v2.0.0. If yo - [ ] [Program Limits](#program-limits) -*If you run into breaking changes that were not covered above or addressed insufficiently, we'd appreciate it if you file an issue [here](https://github.com/AleoHQ/leo/issues/new/choose). The Leo Team will reach out and help you migrate your applications appropriately.* +*If you run into breaking changes that were not covered above or addressed insufficiently, we'd appreciate it if you file an issue [here](https://github.com/ProvableHQ/leo/issues/new/choose). The Leo Team will reach out and help you migrate your applications appropriately.* ## Migrations For each of the breaking changes above, we've provided instructions on how to update your programs accordingly. Some of these will be one-line fixes and others will be more conceptually involved. ### API Endpoints -If you are using API endpoints, you will likely **need to update the URL** to point to the new Testnet Beta endpoint. +If you are using API endpoints, you will likely **need to update the URL** to point to the new Testnet Beta endpoint. **The official endpoint is `https://api.explorer.provable.com/v1/testnet`.** If you are using a custom endpoint, you will just need to update `testnet3` to `testnet` in the URL. @@ -109,7 +109,7 @@ program boo.aleo { ... return (c, finalize_baz(f, ...)); } - + async function finalize_baz(f: Future, ...) { f.await(); ... @@ -265,7 +265,7 @@ leo execute --program credits.aleo --broadcast transfer_public_to_private -[![github]](https://github.com/AleoHQ/python-sdk/tree/master/sdk) +[![github]](https://github.com/ProvableHQ/python-sdk/tree/master/sdk) [github]: https://img.shields.io/badge/github-8da0cb?style=for-the-badge&labelColor=555555&logo=github @@ -30,7 +30,7 @@ pip3 install aleo ``` -Alternatively, you can also install from a `.whl` file, either from the [GitHub repository](https://github.com/AleoHQ/python-sdk/tree/master/sdk/target/wheels), or by building it yourself. For the installation, use a command like this: +Alternatively, you can also install from a `.whl` file, either from the [GitHub repository](https://github.com/ProvableHQ/python-sdk/tree/master/sdk/target/wheels), or by building it yourself. For the installation, use a command like this: ```bash @@ -49,7 +49,7 @@ print(private_key.to_string()) ### Build Instructions -To build it, first clone the [GitHub repository](https://github.com/AleoHQ/python-sdk/tree/master/sdk). Then, run the following command: +To build it, first clone the [GitHub repository](https://github.com/ProvableHQ/python-sdk/tree/master/sdk). Then, run the following command: ```bash bash build.sh ``` diff --git a/documentation/sdk/python/01_zkml_transpiler.md b/documentation/sdk/python/01_zkml_transpiler.md index 2906fcbfe..bde4a3524 100644 --- a/documentation/sdk/python/01_zkml_transpiler.md +++ b/documentation/sdk/python/01_zkml_transpiler.md @@ -5,7 +5,7 @@ sidebar_label: zkml Transpiler --- -[![github]](https://github.com/AleoHQ/python-sdk/tree/master/zkml) +[![github]](https://github.com/ProvableHQ/python-sdk/tree/master/zkml) [github]: https://img.shields.io/badge/github-8da0cb?style=for-the-badge&labelColor=555555&logo=github @@ -53,14 +53,14 @@ pip3 install zkml Note: On some systems, you may need to use `pip` instead of `pip3`. -Alternatively, you can also install through the `.whl` file or in editable mode from the [GitHub repository](https://github.com/AleoHQ/python-sdk/tree/master/zkml). +Alternatively, you can also install through the `.whl` file or in editable mode from the [GitHub repository](https://github.com/ProvableHQ/python-sdk/tree/master/zkml). ### Usage Below is a brief description of the classes and functions provided by the library. Detailed documentation is in progress and will be available soon. -We encourage you to also check out the [examples on GitHub](https://github.com/AleoHQ/python-sdk/tree/master/zkml/examples). +We encourage you to also check out the [examples on GitHub](https://github.com/ProvableHQ/python-sdk/tree/master/zkml/examples). * In a first step, you can receive an object of the class `zkml.LeoTranspiler(model, validation_data)` @@ -80,6 +80,6 @@ We encourage you to also check out the [examples on GitHub](https://github.com/A ## Building Python Apps -Please check out the [examples on GitHub](https://github.com/AleoHQ/python-sdk/tree/master/zkml/examples). +Please check out the [examples on GitHub](https://github.com/ProvableHQ/python-sdk/tree/master/zkml/examples). Further documentation and tutorials as to how to use the `zkml` Python library will follow soon. diff --git a/documentation/sdk/typescript/00_sdk_overview.md b/documentation/sdk/typescript/00_sdk_overview.md index 4be17c567..665936848 100644 --- a/documentation/sdk/typescript/00_sdk_overview.md +++ b/documentation/sdk/typescript/00_sdk_overview.md @@ -77,7 +77,7 @@ To build the project from source, go to this project's root and execute: ### Create Leo App A set of fully functional examples of zero knowledge web apps can be found in -[create-leo-app](https://github.com/AleoHQ/sdk/tree/testnet3/create-leo-app). Create-aleo-app provides several web-app +[create-leo-app](https://github.com/ProvableHQ/sdk/tree/testnet3/create-leo-app). Create-aleo-app provides several web-app templates in common web frameworks such as React that can be used as a starting point for building zero knowledge web apps. Developers can get started immediately with create-react-app by running: @@ -87,7 +87,7 @@ Developers can get started immediately with create-react-app by running: Additionally, the SDK powers [provable.tools](https://provable.tools) - a React app that provides a graphical interface for most of the functionality provided by the SDK and can be used as a reference for usage of the SDK. Source code for provable.tools -can be found [in the SDK repo here](https://github.com/AleoHQ/sdk/tree/testnet3/website) +can be found [in the SDK repo here](https://github.com/ProvableHQ/sdk/tree/testnet3/website) ## 1. Create an Aleo Account @@ -169,7 +169,7 @@ The `ProgramManager` object encapsulates the functionality for executing program them. Under the hood it uses cryptographic code compiled from [snarkVM](https://developer.aleo.org/aleo) into WebAssembly. JavaScript bindings to this WebAssembly code allows execution of programs in zero knowledge fully within the browser without requiring any external communication with the internet. Users interested in lower level details on how this is -achieved can visit the [aleo-wasm](https://github.com/AleoHQ/sdk/tree/testnet3/wasm) crate. +achieved can visit the [aleo-wasm](https://github.com/ProvableHQ/sdk/tree/testnet3/wasm) crate. The basic execution flow of a program is as follows: 1. A web app is loaded with an instance of the `ProgramManager` object @@ -184,7 +184,7 @@ A diagrammatic representation of the program execution flow is shown below. graph LR p1[Leo Program] p2[Aleo Instructions] - + subgraph Browser Web-App subgraph ProgramManager subgraph Aleo-Wasm-Module @@ -203,7 +203,7 @@ graph LR ❗WebAssembly must be initialized before calling any SDK functions. The current Aleo SDK manages the wasm initialization. Therefore, the workers must be defined properly. Aleo programs are made zero knowledge through the usage of `ZkSnarks`. The Rust code behind Aleo programs and the ZkSnarks -that make them zero knowledge are hosted in the [snarkVM Repository](https://github.com/AleoHQ/SnarkVM). The Aleo SDK +that make them zero knowledge are hosted in the [snarkVM Repository](https://github.com/ProvableHQ/SnarkVM). The Aleo SDK compiles this code to WebAssembly and creates JavaScript bindings, enabling Aleo programs to run directly in the browser. Before any logic within the SDK is run within the browser however, the WebAssembly module the SDK contains must be @@ -659,11 +659,11 @@ declare module '*.aleo' { } ``` Make sure that you included custom types in your `tsconfig` file. - + -A full example of this implementation can be found [here](https://github.com/AleoHQ/sdk/blob/testnet3/create-leo-app/template-react-leo/src/App.jsx) +A full example of this implementation can be found [here](https://github.com/ProvableHQ/sdk/blob/testnet3/create-leo-app/template-react-leo/src/App.jsx) ## 3. Aleo Credit Transfers @@ -754,7 +754,7 @@ graph LR m3[account mapping \n key: user4address \n value: 3000u64] m4[account mapping \n key: user3address \n value: 0u64] end - + subgraph credits.aleo account mappings - state 1 m2[account mapping \n key: user3address \n value: 3000u64]--transfer_public \n recipient: user4address \n amount: 3000u64-->m3 m1[account mapping \n key: user4address \n value: N/A] @@ -772,7 +772,7 @@ graph LR subgraph credits.aleo account mappings - state 2 m2[account mapping \n key: user5address \n value: 0u64] end - + subgraph credits.aleo account mappings - state 1 m1[account mapping \n key: user5address \n value: 3000u64] end @@ -1085,8 +1085,8 @@ program player_mapping_example.aleo mapping score: key player as address.public; value score as u64.public; - -// The update score function + +// The update score function function update_score: input r0 as address.public; input r1 as u64.public; diff --git a/documentation/sdk/typescript/03_development_client.md b/documentation/sdk/typescript/03_development_client.md index fd52d2a87..3ec36d221 100644 --- a/documentation/sdk/typescript/03_development_client.md +++ b/documentation/sdk/typescript/03_development_client.md @@ -6,7 +6,7 @@ sidebar_label: Development Client ## Overview -**Kind**: global class +**Kind**: global class * [DevelopmentClient](#DevelopmentClient) * [new DevelopmentClient(baseURL)](#new_DevelopmentClient_new) @@ -31,10 +31,10 @@ sidebar_label: Development Client It requires an Aleo Development Server to be running remotely or locally. If one is not running, this function will throw an error.

Information on how to run an Aleo Development Server can be found here: -https://github.com/AleoHQ/sdk/rust/develop/README.md

+https://github.com/ProvableHQ/sdk/rust/develop/README.md

-**Kind**: instance method of [DevelopmentClient](#DevelopmentClient) -**Returns**: string \| Error -

The transaction_id of the deployment transaction if successful

+**Kind**: instance method of [DevelopmentClient](#DevelopmentClient) +**Returns**: string \| Error -

The transaction_id of the deployment transaction if successful

| Param | Type | Description | | --- | --- | --- | @@ -44,7 +44,7 @@ https://github.com/AleoHQ/sdk/rust/develop/README.md

| password | string \| undefined |

If the development server is started with an encrypted private key, the password is required

| | feeRecord | string \| undefined |

Optional record in text format to be used for the fee. If not provided, the server will search the network for a suitable record to pay the fee.

| -**Example** +**Example** ```js const Program = 'program yourprogram.aleo;\n\nfunction hello:\n input r0 as u32.public;\n input r1 as u32.private;\n add r0 r1 into r2;\n output r2 as u32.private;\n'; const client = new DevelopmentClient("http://0.0.0.0:4040"); @@ -57,10 +57,10 @@ const transaction_id = await client.deployProgram(Program, 6000000, privateKeySt It requires an Aleo Development Server to be running remotely or locally. If one is not running, this function will throw an error.

Information on how to run an Aleo Development Server can be found here: -https://github.com/AleoHQ/sdk/rust/develop/README.md

+https://github.com/ProvableHQ/sdk/rust/develop/README.md

-**Kind**: instance method of [DevelopmentClient](#DevelopmentClient) -**Returns**: string \| Error -

The transaction_id of the execution transaction if successful

+**Kind**: instance method of [DevelopmentClient](#DevelopmentClient) +**Returns**: string \| Error -

The transaction_id of the execution transaction if successful

| Param | Type | Description | | --- | --- | --- | @@ -72,7 +72,7 @@ https://github.com/AleoHQ/sdk/rust/develop/README.md

| password | string \| undefined |

If the development server is started with an encrypted private key, the password is required

| | feeRecord | string \| undefined |

Optional record in text format to be used for the fee. If not provided, the server will search the network for a suitable record to pay the fee.

| -**Example** +**Example** ```js const privateKey = "your private key"; const client = new DevelopmentClient("http://0.0.0.0:4040"); @@ -86,10 +86,10 @@ via an Aleo development server. It requires an Aleo Development Server to be running remotely or locally. If one is not running, this function will throw an error.

Information on how to run an Aleo Development Server can be found here: -https://github.com/AleoHQ/sdk/rust/develop/README.md

+https://github.com/ProvableHQ/sdk/rust/develop/README.md

-**Kind**: instance method of [DevelopmentClient](#DevelopmentClient) -**Returns**: string \| Error -

The transaction_id of the execution transaction if successful

+**Kind**: instance method of [DevelopmentClient](#DevelopmentClient) +**Returns**: string \| Error -

The transaction_id of the execution transaction if successful

| Param | Type | Description | | --- | --- | --- | @@ -102,10 +102,10 @@ https://github.com/AleoHQ/sdk/rust/develop/README.md

| feeRecord | string \| undefined |

Optional record in text format to be used for the fee. If not provided, the server will search the network for a suitable record to pay the fee.

| | amountRecord | string \| undefined |

Optional record in text format to be used to fund the transfer. If not provided, the server will search the network for a suitable record to fund the amount.

| -**Example** +**Example** ```js const privateKey = "your private key"; const recipient = "recipient's address"; const client = new DevelopmentClient("http://0.0.0.0:4040"); const transaction_id = await client.transfer(1.5, 0, recipient, privateKey); -``` \ No newline at end of file +``` diff --git a/documentation/sdk/wasm/00_wasm_installation.md b/documentation/sdk/wasm/00_wasm_installation.md index d0f081f48..a2310fbd4 100644 --- a/documentation/sdk/wasm/00_wasm_installation.md +++ b/documentation/sdk/wasm/00_wasm_installation.md @@ -9,7 +9,7 @@ sidebar_label: Installation Create Leo App Aleo-Wasm -[![github]](https://github.com/AleoHQ/sdk) [![crates-io]](https://crates.io/crates/aleo-wasm) [![docs-rs]](https://docs.rs/aleo-wasm/latest/aleo-wasm/) +[![github]](https://github.com/ProvableHQ/sdk) [![crates-io]](https://crates.io/crates/aleo-wasm) [![docs-rs]](https://docs.rs/aleo-wasm/latest/aleo-wasm/) [github]: https://img.shields.io/badge/github-8da0cb?style=for-the-badge&labelColor=555555&logo=github @@ -20,11 +20,11 @@ sidebar_label: Installation Aleo JavaScript and WebAssembly bindings for building zero-knowledge web applications. -`Rust` compiles easily to `WebAssembly` but creating the glue code necessary to use compiled WebAssembly binaries -from other languages such as JavaScript is a challenging task. `wasm-bindgen` is a tool that simplifies this process by -auto-generating JavaScript bindings to Rust code that has been compiled into WebAssembly. +`Rust` compiles easily to `WebAssembly` but creating the glue code necessary to use compiled WebAssembly binaries +from other languages such as JavaScript is a challenging task. `wasm-bindgen` is a tool that simplifies this process by +auto-generating JavaScript bindings to Rust code that has been compiled into WebAssembly. -This crate uses `wasm-bindgen` to create JavaScript bindings to Aleo source code so that it can be used to create zero +This crate uses `wasm-bindgen` to create JavaScript bindings to Aleo source code so that it can be used to create zero knowledge proofs directly within `web browsers` and `NodeJS`. Functionality exposed by this crate includes: @@ -45,29 +45,29 @@ curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh ``` ### Build Instructions -The general syntax for compiling rust into WebAssembly based JavaScript modules with +The general syntax for compiling rust into WebAssembly based JavaScript modules with [wasm-pack](https://crates.io/crates/wasm-pack) is as follows: ```bash wasm-pack build --target --out-dir -- --features ``` -Invoking this command will build a JavaScript module in the current directory with the default name `pkg` (which can +Invoking this command will build a JavaScript module in the current directory with the default name `pkg` (which can be changed as necessary using the `--out-dir` flag). This folder can then be imported directly as a JavaScript module by other JavaScript modules. -There are 3 possible JavaScript modules that [wasm-pack](https://crates.io/crates/wasm-pack) can be used to generate +There are 3 possible JavaScript modules that [wasm-pack](https://crates.io/crates/wasm-pack) can be used to generate when run within this crate: 1. **NodeJS module:** Used to build NodeJS applications. 2. **Single-Threaded browser module:** Used to build browser-based web applications. -3. **Multi-Threaded browser module:** Used to build browser-based web applications which use web-worker based +3. **Multi-Threaded browser module:** Used to build browser-based web applications which use web-worker based multi-threading to achieve significant performance increases. These 3 modules and how to build them are explained in more detail below. ### 1. NodeJS Module -This module has the features of the NodeJS environment built-in. It is single-threaded and unfortunately cannot yet be +This module has the features of the NodeJS environment built-in. It is single-threaded and unfortunately cannot yet be used to generate Aleo program executions or deployments due to current Aleo protocol limitations. It can however still be used to perform Aleo account, record, and program management tasks. @@ -78,8 +78,8 @@ wasm-pack build --release --target nodejs -- --features "serial" --no-default-fe ### 2. Single-Threaded browser module -This module is very similar to the NodeJS module, however it is built to make use browser-based JavaScript environments -and can be used for program execution and deployment. +This module is very similar to the NodeJS module, however it is built to make use browser-based JavaScript environments +and can be used for program execution and deployment. If used for program execution or deployment, it is suggested to do so on a web-worker as these operations are long-running and will cause a browser window to hang if run in the main thread. @@ -106,19 +106,19 @@ performance-critical applications. To build with threading enabled, it is necessary to use `nightly Rust` and set certain `RUSTFLAGS` to enable the necessary threading features. The `wasm-pack` build command is shown below. ```bash -# Set rustflags to enable atomics, -# bulk-memory, and mutable-globals. -# Also, set the maximum memory to +# Set rustflags to enable atomics, +# bulk-memory, and mutable-globals. +# Also, set the maximum memory to # 4294967296 bytes (4GB). export RUSTFLAGS='-C target-feature=+atomics,+bulk-memory,+mutable-globals -C link-arg=--max-memory=4294967296' -# Use rustup to run the following commands +# Use rustup to run the following commands # with the nightly version of Rust. rustup run nightly \ -# Use wasm-pack to build the project. -# Specify the 'parallel' feature for -# multi-threading and the 'browser' +# Use wasm-pack to build the project. +# Specify the 'parallel' feature for +# multi-threading and the 'browser' # feature to enable program execution # and include necessary unstable options # using -Z @@ -140,7 +140,7 @@ wasm-pack test --[firefox/chrome/safari] ## Building Web Apps -Further documentation and tutorials as to how to use the modules built from this crate to build web apps will be built +Further documentation and tutorials as to how to use the modules built from this crate to build web apps will be built in the future. However - in the meantime, the [provable.tools](https://provable.tools) website is a good -example of how to use these modules to build a web app. Its source code can be found in the -[Aleo SDK](https://github.com/AleoHQ/sdk) repo in the `website` folder. +example of how to use these modules to build a web app. Its source code can be found in the +[Aleo SDK](https://github.com/ProvableHQ/sdk) repo in the `website` folder. diff --git a/documentation/testnet/getting_started/00_overview.md b/documentation/testnet/getting_started/00_overview.md index 8b0176317..904c6ef18 100644 --- a/documentation/testnet/getting_started/00_overview.md +++ b/documentation/testnet/getting_started/00_overview.md @@ -15,12 +15,12 @@ and running experimental features for inclusion on mainnet. ## snarkOS -`snarkOS` is a decentralized operating system for anonymous web applications. It forms the backbone of Aleo and +`snarkOS` is a decentralized operating system for anonymous web applications. It forms the backbone of Aleo and enables developers to checkpoint and finalize application state in a publicly-verifiable manner. ### Source Code -`snarkOS` is open-source and publicly-hosted on [GitHub](https://github.com/AleoHQ/snarkOS). +`snarkOS` is open-source and publicly-hosted on [GitHub](https://github.com/ProvableHQ/snarkOS). ## Query The Network @@ -33,7 +33,7 @@ To connect to the network, make a request to an Aleo Testnet bootnode. |------------------| | [https://api.explorer.provable.com/v1/testnet](https://api.explorer.provable.com/v1/testnet/) | -For example, you can [retrieve the current block height](https://api.explorer.provable.com/v1/testnet/latest/height). +For example, you can [retrieve the current block height](https://api.explorer.provable.com/v1/testnet/latest/height). With a local instance of `snarkos`, you can launch a client node with: @@ -47,7 +47,7 @@ By default, this will make the node API available at `0.0.0.0:3030`: http://0.0.0.0:3030/testnet/latest/height ``` -Now, refer to the [API reference](#api) for a list of available endpoints. +Now, refer to the [API reference](#api) for a list of available endpoints. ## Docker @@ -92,5 +92,3 @@ docker start -a snarkos - [Find Transition ID](../public_endpoints/22_find_transition_id.md) - [Get Environment Information](../public_endpoints/23_get_env_info.md) - [Transaction Broadcast](../public_endpoints/24_transaction_broadcast.md) - - diff --git a/documentation/testnet/getting_started/01_installation.md b/documentation/testnet/getting_started/01_installation.md index f73091233..03a92c5a4 100644 --- a/documentation/testnet/getting_started/01_installation.md +++ b/documentation/testnet/getting_started/01_installation.md @@ -67,7 +67,7 @@ Before beginning, please ensure your machine has `Rust v1.76+` installed. Instru Start by cloning this Github repository: ``` -git clone https://github.com/AleoHQ/snarkOS.git --depth 1 +git clone https://github.com/ProvableHQ/snarkOS.git --depth 1 ``` Next, move into the `snarkOS` directory: @@ -140,7 +140,7 @@ APrivateKey1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx - Ensure ports `4130/tcp` and `3030/tcp` are open on your router and OS firewall. - Ensure `snarkOS` is started using `./run-client.sh` or `./run-prover.sh`. -### 3. I can't generate a new address ### +### 3. I can't generate a new address ### - Before running the command above (`snarkos account new`) try `source ~/.bashrc` - Also double-check the spelling of `snarkos`. Note the directory is `/snarkOS`, the command is `snarkos` @@ -151,7 +151,7 @@ To run a node with custom settings, refer to the full list of options and flags The full list of CLI flags and options can be viewed with `snarkos --help`: ``` -snarkOS +snarkOS The Aleo Team USAGE: @@ -176,24 +176,24 @@ USAGE: OPTIONS: --network Specify the network ID of this node [default: 3] - + --validator Specify this node as a validator --prover Specify this node as a prover --client Specify this node as a client - + --private-key Specify the node's account private key --private-key-file Specify the path to a file containing the node's account private key - + --node Specify the IP address and port for the node server [default: 0.0.0.0:4130] --connect Specify the IP address and port of a peer to connect to - + --rest Specify the IP address and port for the REST server [default: 0.0.0.0:3030] --norest If the flag is set, the node will not initialize the REST server - + --nodisplay If the flag is set, the node will not render the display --verbosity Specify the verbosity of the node [options: 0, 1, 2, 3] [default: 2] --logfile Specify the path to the file where logs will be stored [default: /tmp/snarkos.log] - + --dev Enables development mode, specify a unique ID for this node -h, --help Print help information ``` diff --git a/documentation/testnet/getting_started/02_deploy_and_execute.md b/documentation/testnet/getting_started/02_deploy_and_execute.md index 602098b88..5300115fe 100644 --- a/documentation/testnet/getting_started/02_deploy_and_execute.md +++ b/documentation/testnet/getting_started/02_deploy_and_execute.md @@ -22,7 +22,7 @@ These CLI commands currently live in snarkOS, but can also be migrated to the Al ### 1. Install snarkOS ``` -git clone https://github.com/AleoHQ/snarkOS.git +git clone https://github.com/ProvableHQ/snarkOS.git cd snarkOS git checkout mainnet-staging cargo install --path . @@ -47,7 +47,7 @@ snarkos developer scan -v --start 0 --end 1 --endpoint "http://localh Transfer credits to another account. ``` -snarkos developer execute credits.aleo transfer "u64" --private-key --query "http://localhost:3030" --broadcast "http://localhost:3030/testnet/transaction/broadcast" +snarkos developer execute credits.aleo transfer "u64" --private-key --query "http://localhost:3030" --broadcast "http://localhost:3030/testnet/transaction/broadcast" ``` or @@ -71,7 +71,7 @@ snarkos developer deploy fibonacci.aleo --private-key --query "htt ### 6. Execute a function of a deployed program ``` -snarkos developer execute fibonacci.aleo fibonacci "1u8" --private-key --query "http://localhost:3030" --broadcast "http://localhost:3030/testnet/transaction/broadcast" +snarkos developer execute fibonacci.aleo fibonacci "1u8" --private-key --query "http://localhost:3030" --broadcast "http://localhost:3030/testnet/transaction/broadcast" ``` *NOTE: Fees (in microcredits) must be greater than the transaction size in bytes. Fees can be excluded from execution transactions, but if one is specified, it must follow the above rule. * @@ -150,7 +150,7 @@ Create an Aleo program execution. ##### Example: ``` -snarkos developer execute fibonacci.aleo fibonacci "1u8" --private-key --query "http://localhost:3030" --broadcast "http://localhost:3030/testnet/transaction/broadcast" +snarkos developer execute fibonacci.aleo fibonacci "1u8" --private-key --query "http://localhost:3030" --broadcast "http://localhost:3030/testnet/transaction/broadcast" ``` ### Scan @@ -206,7 +206,7 @@ snarkos developer transfer --input-record -- ``` -## Usage on Testnet Beta +## Usage on Testnet Beta To deploy and execute programs on Testnet Beta @@ -222,6 +222,3 @@ Deployment transactions have an additional requirement where the included fee mu Execution transactions do not currently have any fee requirements. *If you'd like to try out deploying an Aleo app, you can follow the demo in the next section, [Deploy and Execute Demo](./03_deploy_and_execute_demo.md).* - - - diff --git a/documentation/testnet/getting_started/03_deploy_and_execute_demo.md b/documentation/testnet/getting_started/03_deploy_and_execute_demo.md index 1d1021400..449f9fd0b 100644 --- a/documentation/testnet/getting_started/03_deploy_and_execute_demo.md +++ b/documentation/testnet/getting_started/03_deploy_and_execute_demo.md @@ -10,7 +10,7 @@ Bugs, usability suggestions, and feedback in general would be greatly appreciate ## Overview -Learn how to deploy and execute a basic "hello world!" program on Aleo's network using Leo and snarkOS. +Learn how to deploy and execute a basic "hello world!" program on Aleo's network using Leo and snarkOS. ## Usage guide @@ -26,7 +26,7 @@ Make sure you have both Leo and snarkOS installed on your machine. **Note**: -* You can find instructions to install Leo on your machine [here](https://github.com/ProvableHQ/leo) and snarkOS [here](https://github.com/AleoHQ/snarkos) +* You can find instructions to install Leo on your machine [here](https://github.com/ProvableHQ/leo) and snarkOS [here](https://github.com/ProvableHQ/snarkos) * Make sure to pull the latest versions of `snarkos` and `leo` from GitHub to your local machine ### 2. Generate your test keys and wallet address @@ -38,11 +38,11 @@ Make sure you have both Leo and snarkOS installed on your machine. ### 3a. Seeding your wallet with credits -To seed your wallet, you'll need to request credits from Aleo's faucet at [faucet.aleo.org](https://faucet.aleo.org/) ⛲️. +To seed your wallet, you'll need to request credits from Aleo's faucet at [faucet.aleo.org](https://faucet.aleo.org/) ⛲️. -**Note**: +**Note**: * It can take up to 5-minutes for the faucet to send your credits, to bide the time, concurrently move on to step 3b below. * ⚠️ International requests are not supported by the faucet at the moment (a solution is coming soon). In the meantime, if you need credits and are testing internationally, reach out to the Aleo team on Discord or Twitter for support. @@ -92,9 +92,9 @@ PATHTOAPP=$(realpath -q $APPNAME) ### 4. Confirm the Aleo faucet ⛲️ has sent your wallet credits and obtain your ciphertext record value -By this point, the Aleo faucet should have sent your wallet credits. Next, you'll need to verify your credit balance by decrypting the ciphertext record for the execute transfer that was sent to you. +By this point, the Aleo faucet should have sent your wallet credits. Next, you'll need to verify your credit balance by decrypting the ciphertext record for the execute transfer that was sent to you. -If you requested credits by texting with your phone number, you should also receive a confirmation with a URL that has a prefix of `explorer.aleo.org/transaction...` +If you requested credits by texting with your phone number, you should also receive a confirmation with a URL that has a prefix of `explorer.aleo.org/transaction...` diff --git a/documentation/testnet/getting_started/04_developer_toolkit.md b/documentation/testnet/getting_started/04_developer_toolkit.md index 85057124e..88ee56923 100644 --- a/documentation/testnet/getting_started/04_developer_toolkit.md +++ b/documentation/testnet/getting_started/04_developer_toolkit.md @@ -20,9 +20,9 @@ Open a new terminal window and type `leo --help` to confirm that Leo is installe ``` CLI Arguments entry point - includes global parameters and subcommands - + Usage: leo [OPTIONS] [API] - + Commands: account Create a new Aleo account new Create a new Leo package in a new directory @@ -33,10 +33,10 @@ Open a new terminal window and type `leo --help` to confirm that Leo is installe execute Execute a program with input variables update Update the Leo CLI help Print this message or the help of the given subcommand(s) - + Arguments: [API] Custom Aleo PM backend URL [env: APM_URL=] - + Options: -d Print additional information for debugging -q Suppress CLI output @@ -45,7 +45,7 @@ Open a new terminal window and type `leo --help` to confirm that Leo is installe -V, --version Print version ``` -###### πŸ’‘Note: If you do not see the output above, you can build Leo from source by following the guide [here](https://github.com/AleoHQ/leo#%EF%B8%8F%EF%B8%8F-build-guide) or download the [latest `.zip`](https://github.com/AleoHQ/leo/releases/latest) file directly and then move the Leo binary to any location; we recommend `/usr/local/bin`. +###### πŸ’‘Note: If you do not see the output above, you can build Leo from source by following the guide [here](https://github.com/ProvableHQ/leo#%EF%B8%8F%EF%B8%8F-build-guide) or download the [latest `.zip`](https://github.com/ProvableHQ/leo/releases/latest) file directly and then move the Leo binary to any location; we recommend `/usr/local/bin`. ### The `leo account` command @@ -69,15 +69,15 @@ Open a new terminal window and type `leo --help` to confirm that Leo is installe ``` Create a new Leo example package in a new directory - + Usage: leo example [OPTIONS] - + Commands: lottery A public lottery program tictactoe A standard tic-tac-toe game program token A transparent & shielded custom token program help Print this message or the help of the given subcommand(s) - + Options: -d Print additional information for debugging -q Suppress CLI output
Howard Wu
Howard Wu

πŸ’» πŸ€” 🚧 πŸ‘€
Collin Chin
Collin Chin

πŸ’» 🚧 πŸ’¬ πŸ‘€
Raymond Chu
Raymond Chu

πŸ› πŸ’» πŸ€” πŸ‘€
a h
a h

πŸ“– 🚧 πŸ“† πŸ‘€
Mohammed Alobaidi
Mohammed Alobaidi

πŸ’» πŸ“– 🚧 πŸ‘€
Christian Wooddell
Christian Wooddell

πŸ’» πŸ“– 🚧 πŸ‘€
Alessandro Coglio
Alessandro Coglio

πŸ“– 🚧 πŸ”¬ πŸ‘€
Howard Wu
Howard Wu

πŸ’» πŸ€” 🚧 πŸ‘€
Collin Chin
Collin Chin

πŸ’» 🚧 πŸ’¬ πŸ‘€
Raymond Chu
Raymond Chu

πŸ› πŸ’» πŸ€” πŸ‘€
a h
a h

πŸ“– 🚧 πŸ“† πŸ‘€
Mohammed Alobaidi
Mohammed Alobaidi

πŸ’» πŸ“– 🚧 πŸ‘€
Christian Wooddell
Christian Wooddell

πŸ’» πŸ“– 🚧 πŸ‘€
Alessandro Coglio
Alessandro Coglio

πŸ“– 🚧 πŸ”¬ πŸ‘€
Eric McCarthy
Eric McCarthy

πŸ“– 🚧 πŸ”¬ πŸ‘€
mdelle1
mdelle1

πŸ“– πŸ”¬
vicsn
vicsn

πŸ“– πŸ”¬
Damir Shamanaev
Damir Shamanaev

πŸ“–
LouisWT
LouisWT

πŸ“–
jules
jules

πŸ“–
EDGD
EDGD

πŸ“–
Eric McCarthy
Eric McCarthy

πŸ“– 🚧 πŸ”¬ πŸ‘€
mdelle1
mdelle1

πŸ“– πŸ”¬
vicsn
vicsn

πŸ“– πŸ”¬
Damir Shamanaev
Damir Shamanaev

πŸ“–
LouisWT
LouisWT

πŸ“–
jules
jules

πŸ“–
EDGD
EDGD

πŸ“–
ofloxacin
ofloxacin

πŸ“–
Syed Imam
Syed Imam

πŸ“–
B1boid
B1boid

πŸ“–
CrypticDriver
CrypticDriver

πŸ“–
Yujia Qiao
Yujia Qiao

πŸ“–
Josh Beal
Josh Beal

πŸ“–
Kostyan
Kostyan

πŸ“–
ofloxacin
ofloxacin

πŸ“–
Syed Imam
Syed Imam

πŸ“–
B1boid
B1boid

πŸ“–
CrypticDriver
CrypticDriver

πŸ“–
Yujia Qiao
Yujia Qiao

πŸ“–
Josh Beal
Josh Beal

πŸ“–
Kostyan
Kostyan

πŸ“–
detailyang
detailyang

πŸ“–
Thibaut Schaeffer
Thibaut Schaeffer

πŸ“–
gluax
gluax

πŸ“–
Graeme
Graeme

πŸ“–
pk
pk

πŸ“–
Wietze
Wietze

πŸ“–
Dependabot
Dependabot

πŸ’»
detailyang
detailyang

πŸ“–
Thibaut Schaeffer
Thibaut Schaeffer

πŸ“–
gluax
gluax

πŸ“–
Graeme
Graeme

πŸ“–
pk
pk

πŸ“–
Wietze
Wietze

πŸ“–
Dependabot
Dependabot

πŸ’»
actions-user
actions-user

πŸ“–
aleosys
aleosys

πŸ“–
actions-user
actions-user

πŸ“–
aleosys
aleosys

πŸ“–