LogoLogo
  • Overview
  • Basics
    • Architecture
  • Key Concepts
    • EVM Ledger
    • UTXO Chain
      • Confidential transfers
        • Overview
        • Concepts
        • Technical Specifications
    • Prism++ Transfer
    • Triple Masking
      • Overview
      • SDK Installation
      • Bar to Abar
      • Abar to Bar
      • Abar Transfer
    • Staking
      • Overview
      • EVM Staking
        • UTXO Staking and EVM Staking
        • EVM Staking Portal User Guide
      • Consensus
      • Rewards
      • Penalties
  • Developers
    • Acquire Testnet FRA
    • EVM Tools & Tutorials
      • Contract Deployment
        • Ganache
        • Hardhat
        • Remix
        • Truffle
        • Waffle
      • The Graph
      • Band Protocol
      • Mint NFTs
        • Deploy NFT Contract (1 of 3)
        • Mint NFT (2 of 3)
        • View NFT (3 of 3)
    • Developer SDKs
      • UTXO Native Chain SDK
        • UTXO Native Chain SDK Installation
        • Developer Tools
          • Findora CLI Tool
        • UTXO API Reference
          • Account
          • Keypair
          • Network
          • Asset
          • Staking
          • Transaction
          • Helpers
      • ZkRouting SDK
      • zkDID SDK
        • zkDID SDK Installation
        • zkDID API Reference
        • zkDID Example Code
      • Prism++ SDK
    • EVM References
      • Metamask
      • Local Development Network Setup
      • EVM API Reference
      • Precompiled Contracts
    • Resources
      • Bug Bounties
      • Events
        • 🏗️ETH San Francisco 2022
          • zkDID and Credentials
        • 🏗️ETH Denver 2023
    • Game-Specific Chains
      • GSC Highlights
      • User Guide
      • Developer Tools
  • Network Settings
    • Contract Addresses
    • Network Settings
  • General User Materials
    • Acquire FRA
    • Acquire FRA (Testnet)
    • Stake FRA
    • Use Wallets
      • MetaMask
        • Download
        • Configure (Auto)
        • Configure (Manual)
      • Findora Wallet
        • Download
        • New Wallet
        • Transfer
        • Prism++
        • Adding Assets to the Findora Wallet
        • Manage Assets
      • Ledger Hardware Wallet
    • Bridging Tokens to Findora
    • Use Block Explorers
    • Explore Testnet
      • Triple Masking
        • Triple Masking Demo
      • EVM Staking
      • Prism++
        • Prism++ Testing Campaign
          • 💰Testnet Wallet Setup/Funding
          • 👨‍🌾👨🌾 Peasant: Prism++ Campaign Signup
          • 🧒Pupil: FRC20 Token Transfers
          • 🧑‍🎨🧑🎨 Pilgrim: FRC 721 Token Transfers
          • 🧑‍🎓🧑🎓 Prodigy: FRC1155 Token Transfers
          • 🧑‍🚀🧑🚀 Pioneer: Mainnet Transfers
          • Prism++ Testnet Campaign FAQs
    • Gaxle Events
      • Game Chain Challenges
        • Getting Started
        • The Campaigns
        • The Reward Raffles
  • Validator Materials
    • Findora's University Program
    • Validator Setup Guides
      • System Requirements
      • Acquire a Server
      • Validator Toolbox Setup
        • New Build
        • Existing Build
        • Additional Info
      • Manual Setup
      • Automated Setup (Deprecated)
    • Upgrade Guides
      • Node Upgrade (Toolbox)
      • Node Upgrade (Manual)
      • fn CLI Upgrade (Wallet)
    • Operational Guides
      • Emergency Recovery
      • Data Backup
      • CLI Staking
Powered by GitBook
On this page
  • 1. Prerequisites​
  • 2. Build Required Binaries​
  • 3. Install Python3 and toml-cli​
  • 4. Run Devnet​
  • 5. Devnet URLs and Ports​
  • 6. Troubleshoot​

Was this helpful?

Edit on GitHub
  1. Developers
  2. EVM References

Local Development Network Setup

This guide walks through how to deploy a local blockchain instance for software development and testing purposes. Alternatively, developers can also develop and test on Anvil Testnet.

PreviousMetamaskNextEVM API Reference

Last updated 2 years ago

Was this helpful?

1. Prerequisites

i) Install Golang

Tips for Linux (Ubuntu)

#first command needs to be run as root, rest as your normal user
wget https://go.dev/dl/go1.18.3.linux-amd64.tar.gz 
sudo su 
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.18.3.linux-amd64.tar.gz

#exit root now
exit

#add to path. For more permanent you should add this line to bottom of your ~/.profile
export PATH=$PATH:/usr/local/go/bin

#check go version
go version

ii) Install Rust

If already installed, please update to 1.59 or newer

rustup update

iii) Install System Specific Dependencies

sudo apt update && \
sudo apt upgrade -y && \
sudo apt install -y build-essential libleveldb-dev libssl-dev pkg-config clang libclang-dev librocksdb-dev
brew install openssl leveldb

Findora blockchain can run on both MacOS or Linux. The commands below will build all required binaries to start a local Findora blockchain.

git clone -b v0.3.19-release https://github.com/FindoraNetwork/platform &&
cd platform &&
make build_release

Please make sure to add all below 3 binaries to your $PATH. By default, they will be copied to ~/.cargo/bin/ which should already be in your $PATH.

  • stt: The tool to initialize Findora blockchain.

  • abcid: Findora core protocol.

  • tendermint: Tendermint consensus engine.

pip3 install toml-cli

and then copy newly installed toml cli tool to /usr/local/bin to make it visible

cp /Library/Python/3.x/site-packages/toml /usr/local/bin

Inside your platform directory, execute make devnet in the terminal.

Name
Description

node0

The validator

node1

The fullnode

Faucet

The key pair that holds FRA

The local blockchain can be stopped and restarted anytime during development and tests.

  • Stop Blockchain: ./tools/devnet/stopnodes.sh

  • Restart Blockchain: ./tools/devnet/startnodes.sh

  • Start Over: make devnet again.

URL
Purpose

connects to Web3 HTTP

connects to Web3 WebSocket

  • Problem 1

    • Error Message:

      • make build_release fails with go:linkname must refer to declared function or variable

  • Solution

    • Update your golang.org/x/sys

      # go to platform/tools/tendermint run following to update  
      go get -u golang.org/x/sys
  • Problem 2

    • .findora file is missing

  • Solution

    • manually add .findora to your home directory (i.e. directory ~)

2. Build Required Binaries

3. Install Python3 and toml-cli

Findora devnet tools are written in Python3 and use toml-cli to manipulate configuration files. if not already installed. Also, install toml-cli using the command below:

4. Run Devnet

i) What's in devnet?

ii) How to control devnet?

5. Devnet URLs and Ports

connects to

6. Troubleshoot

​
​
https://go.dev/doc/install
​
https://rustup.rs/
​
​
Install Python3
​
​
​
​
​
http://127.0.0.1
Findora Electron Wallet
http://127.0.0.1:8545
http://127.0.0.1:8546