diff --git a/Pipfile b/Pipfile new file mode 100644 index 00000000..c398b0d5 --- /dev/null +++ b/Pipfile @@ -0,0 +1,11 @@ +[[source]] +url = "https://pypi.org/simple" +verify_ssl = true +name = "pypi" + +[packages] + +[dev-packages] + +[requires] +python_version = "3.10" diff --git a/docs/docs/deploying-a-fetch-node.md b/docs/docs/deploying-a-fetch-node.md new file mode 100644 index 00000000..69220870 --- /dev/null +++ b/docs/docs/deploying-a-fetch-node.md @@ -0,0 +1,63 @@ +# Deploying a Fetch.AI node + +Supported platforms + +* MacOS Darwin 10.13x and higher (64bit) +* Ubuntu 18.04 (x86_64) + +We plan to support all major platforms in the future. + +## Requirements +Before you can get going, make sure you’ve got the following requirements installed. + +If you’re on Mac, you’ll need to install openssl: + +`brew install cmake openssl` + +If you’re on Ubuntu: + +`sudo apt-get install libssl-dev cmake python3-dev clang` + +With those requirements fulfilled, download our ledger from our release branch. You are also going to need to download the following submodules: + +`git clone https://github.com/fetchai/ledger.git` +`cd ledger` +`mkdir build` +`git submodule update --init --recursive` + +You might want to checkout the branch `v0.3.1-rc1` you may need to `git fetch` to see it, but this is our latest stable. + +## Building the code +The project uses cmake so follow this build procedure: + +`cd build` +`cmake ../` +`make -j` + +## Running a single node locally +Open terminal and go to the build directory within the ledger directory. + +`./apps/constellation/constellation -block-interval 3000 -standalone -port 8000` + +## Running a private network +Open terminal and go to the build directory within the ledger directory. + +In one terminal window: + +`./apps/constellation/constellation -block-interval 3000 -private-network -port 8020 -peers tcp://127.0.0.1:8001` + +In another terminal window: + +`./apps/constellation/constellation -block-interval 3000 -private-network -port 8040 -peers tcp://127.0.0.1:8021` + +## Further reading +We cover installation in further detail on our community site. + +With this information you should be able to deploy a node on the Fetch.AI network. If you need help, email us at support@fetch.ai. You can also join our telegram channel. + +## License +Fetch Ledger is licensed under the Apache software license (see LICENSE file). Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either \ express or implied. + +Fetch.AI makes no representation or guarantee that this software (including any third-party libraries) will perform as intended or will be free of errors, bugs or faulty code. The software may fail which could completely or partially limit functionality or compromise computer systems. If you use or implement the ledger, you do so at your own risk. In no event will Fetch.AI be liable to any party for any damages whatsoever, even if it had been advised of the possibility of damage. + +As such this codebase should be treated as experimental and does not contain all currently developed features. Fetch.AI will be delivering regular updates. diff --git a/docs/docs/validators/overview.md b/docs/docs/validators/overview.md index 00f03eff..02578021 100644 --- a/docs/docs/validators/overview.md +++ b/docs/docs/validators/overview.md @@ -10,6 +10,37 @@ Validators and their delegators will earn FET as block provisions and tokens as If validators double sign, are frequently offline or do not participate in governance, their staked FET (including FET of users that delegated to them) can be slashed. The penalty depends on the severity of the violation. +## Validator benefits + +Validators will produce blocks on the Fetch.ai mainnet, in exchange for rewards, but also experience a number of other benefits: + +- Greater say in the future direction of the protocol through their role in governance. +- Reputation as a valued member of the community. +- Faster submission of transactions and direct access to the network operation. +- Access to more and faster information on the current state of the network. +- Access to other business models (as they emerge, including oracles or hosted agent applications). + +## Validator Revenue + +Similarly to most other Proof-of-Stake blockchains, the Fetch ledger provides revenue to validators in the form of block rewards and transaction fees. Smaller holders of FET tokens are able to delegate their stake to validators in exchange for a share of the rewards, as determined by the validator. + +- **Block rewards (FET)**: Rewards are provided for every block that is produced by a validator. The inflation rate is set at an annual rate of 3% during the first three years of the networks’ operation. + +- **Transaction Fees**: All transactions that are submitted to the chain are charged a transaction fee denominated in FET. This is payable for simple transfers, smart contract deployments, contract calls, governance and any other type of transaction. The usage of state and computational resources involves a fee proportional to the quantity of resources used. + +- **Agent and ML services**: Validators also an opportunity to support AI and agent-based services on the Fetch.ai blockchain. These include hosting datasets for machine learning applications, operating agent search-and-discovery services and operating agent networks that provide oracle services. + +## Who typically acts as a validator in a network? + +- Community members who are enthusiastic about the Fetch.ai protocol. +- Those wishing to take part directly in governance or network operations. +- Professional staking operations. +- Blockchain founders and developers. + +## What are the costs? + +It costs time and money to operate a node. If your node is offline (unavailable) some of its stake will be slashed (i.e. deducted). + ## Hardware The hardware resources for running a validator node largely depend on the network load. As a recommended configuration we suggest the following requirements diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index eaa429e4..7094ce21 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -35,6 +35,7 @@ nav: - Setup: 'validators/setup.md' - Joining a Testnet: 'joining-a-testnet.md' - Single Node Testnet: 'single-node-network.md' + - Deploying a Fetch.ai node: 'deploying-a-fetch-node.md' - Block Explorer: 'block-explorer.md' - Governance: 'governance.md' - Faucet: 'faucet.md'