Welcome to the Réti Open Pooling monorepo. This README provides instructions for running the protocol and its accompanying example UI in a local environment. Detailed protocol information and its objectives can be found in the Gitbook documentation.
The Réti Open Pooling protocol enables the creation of decentralized staking pools on the Algorand network, promoting broader participation and enhancing network security through diversification. It is designed to be open-source, non-custodial, and fully decentralized, allowing for the creation and joining of staking pools to meet the minimum stake required for node rewards on Algorand.
Before starting, ensure you have the following installed:
- Docker: Required for running AlgoKit. Installation guide.
- AlgoKit: Version 2.0 or later is required. Installation guide. Verify by running
algokit --version
. - PNPM: Version 8.0 or later for package management. Installation guide. Verify by running
pnpm --version
.
This section provides instructions for running the protocol and UI in a local AlgoKit sandbox environment.
-
Clone the repository
git clone https://github.com/algorandfoundation/reti.git
-
Navigate to the
reti
directorycd reti
-
Install dependencies
pnpm install
-
Start the local (fnet compatible) test network
cd contracts; pnpm run localnet
-
Bootstrap the validator
This command bootstraps a new master validator and funds two new test accounts. It also sets environment variables for LocalNet that will be used by the front-end.
cd contracts/boostrap; pnpm run bootstrap
-
Launch the UI
cd ui; pnpm run dev:localnet
-
Navigate to the
ui
directorycd ui
-
Create a
.env.fnet
fileCopy the fnet variables from the
.env.template
file into a new.env.fnet
file. Check back often to make sure you're using the latest master validator app ID, set toVITE_RETI_APP_ID
. -
Launch the UI
pnpm run dev:fnet
- The documentation is currently available online at https://txnlab.gitbook.io/reti-open-pooling
- The content is synced with the docs/gitbook branch of this repo inside the ./docs directory.
- The changes in that branch should periodically be merged into main but the docs/gitbook branch is the source of truth for the public docs site currently hosted at: https://txnlab.gitbook.io/reti-open-pooling
- TEALScript Contracts: Explore the smart contracts that power the protocol. Read more
- Node Daemon: Learn about the CLI / service daemon which node runners will run as a background service. Read more
- Example UI: A Vite React project that serves as a dashboard for staking and validator management. Read more
For questions or technical support, you can reach us in the #reti channel on NFD's Discord: https://discord.gg/w6vSwG5bFK