Welcome to the official Telos repository! This software enables anyone to rapidly build and deploy high-performance and high-security blockchain-based applications.
Telos offers a suite of features including:
- Economic disparity solutions such as elimination of whale accounts, inversely weighted voting, and increased token equity.
- Developer and Enterprise features such as designation of propietary code and reduced RAM speculation.
- Network freeze mitigation by regularly rotating standby BP's into production status to ensure operability and uptime.
- Standby and BP payments are straightforward and fair, resulting in a better payment experience.
- The Telos Constitution is ratified and enforceable at launch.
- ...more features incoming!
For a full explanation of all the proposed Telos features, be sure to read our whitepaper!
The Telos Foundation has created a lightweight, powerful tool that helps with automating many of the repetitive steps involved in setting up and configuring Telos nodes.
-
Follow the installation instructions here to set up Grow.
-
Navigate to your desired working directory and run
grow init pull
. -
The
grow spin single
command will spin up a single node, but requires 4 positional arguments: producer name, p2p address, genesis.json path, and node address.a. Example:
grow spin single prodname1234 {your-ip} path/to/genesis.json testnet.telosfoundation.io:6789
b. There are also 2 optional flags:
--p2p-port
and--http-port
. These flags have default values of9876
and8888
, respectively. -
Run
grow spin output prodname1234
to view the feed from the node. -
By default, Grow creates nodes in folders inside the current working directory. For example, the node created above would be in a folder named
tn-prodname1234
. Inside the node folder is theconfig.ini
andgenesis.json
used to start the node. If you need reference to the config options used for registering your node, see theconfig.ini
in this folder. -
Register Node on Testnet.
a. Navigate to testnet.telosfoundation.io and click on the Register button.
b. Enter your configuration into the web form.
c. Copy the command generated by submitting the form.
d. Run the generated
regproducer
command on your local node.e. Your account is now created and registered as a producer on the testnet.
-
Clone master branch
a.
git clone https://github.com/Telos-Foundation/telos
b.
git checkout stage2.0
c.
git submodule update --init --recursive
-
Inside the telos folder run the following commands:
a.
./telos_build.sh
b.
cd build && sudo make install
-
Set up config.ini file
a. Run nodeos to generate a config file. This will generate a config.ini file in the current directory if none exists.
nodeos --config-dir ./
b. Determine your Producer name. Please be aware there are restrictions on the allowed characters.
producer-name = prodname1234
b. Determine your Signature Provider. Run
teclos create key
, and import your keys into your wallet.signature-provider = TLOS{public key}=KEY:{private key}
c. Determine your p2p and http endpoints. Choose your own p2p and http ports.
http-server-address = 0.0.0.0:{http port} p2p-listen-endpoint = 0.0.0.0:{p2p port} p2p-server-address = {external IP address}:{p2p port} p2p-peer-address = testnet.telosfoundation.io:6789
d. Determine your Plugins. The only required plugin is producer_plugin, but other plugins add extended functionality to your nodes.
plugin = eosio::http_plugin plugin = eosio::chain_plugin plugin = eosio::chain_api_plugin plugin = eosio::history_plugin plugin = eosio::history_api_plugin plugin = eosio::net_plugin plugin = eosio::net_api_plugin plugin = eosio::producer_plugin
-
Register Node on Testnet
a. Navigate to testnet.telosfoundation.io and click on the Register button.
b. Enter your configuration into the web form.
c. Copy the command generated by submitting the form.
d. Run the generated
regproducer
command on your local node.e. Your account is now created and registered as a producer on the testnet.
Telos currently supports the following operating systems:
- Amazon 2017.09 and higher
- Centos 7
- Fedora 25 and higher (Fedora 27 recommended)
- Mint 18
- Ubuntu 16.04 (Ubuntu 16.10 recommended)
- Ubuntu 18.04
- MacOS Darwin 10.12 and higher (MacOS 10.13.x recommended)
The Telos Testnet is a sandbox for testing newly implemented features and finding bugs within the network. In order to ensure the network behaves as expected, participation in Testnet activites and providing meaningful feedback is encouraged.
-
Voting Voting is an important part of the network, and with Telos' proposed changes to the voting stucture each vote will carry more weight and whales will have significantly less influence on the direction of the network.
-
Claiming Producer/Standby Rewards In order to receive your hard-earned Producer/Standby payout, registered producers will make a call to
claimrewards
no more than once per day. Whenclaimrewards
is called, the calling producer's share of TLOS is calculated and paid to their account. In addition to sending the producer's earned payout,claimrewards
will also make a deposit to the Worker Proposal Fund. This deposit is not taken out of the producer's share, but rather from the newly minted tokens from the claimrewards call. For a more in depth explanation of this process, please consult the whitepaper or join a discussion on our many public channels.
The Telos Roadmap is broken into four separate stages. Each stage implements new features outlined in the white paper. Once all the features of a stage have been implemented, tested, and peer reviewed, the group will move onto implementing the next stage. Each stage may contain versions. These versions will contain amendments and features that have yet to be completed and/or tested. Below you will see an outline of the stages.
- Stage 1.0
- Stage 1.1
- Stage 2.0
- Stage 3.0
- Ratify and Amend Contract
- Automatic Block Producer Minimum Enforcement
- Block Producer Adjudication Contract
- Stage 4.0
- Include Snapshot Accounts
- Validate Snapshot Accounts
- Validate Chain Functionality
- Test Chain Security
- Main Net
Telos is released under the open source MIT license and is offered “AS IS” without warranty of any kind, express or implied. Any security provided by the Telos software depends in part on how it is used, configured, and deployed. Telos is built upon many third-party libraries such as Binaryen (Apache License) and WAVM (BSD 3-clause) which are also provided “AS IS” without warranty of any kind. Without limiting the generality of the foregoing, Telos Foundation makes no representation or guarantee that Telos or any third-party libraries will perform as intended or will be free of errors, bugs or faulty code. Both may fail in large or small ways that could completely or partially limit functionality or compromise computer systems. If you use or implement Telos, you do so at your own risk. In no event will Telos Foundation be liable to any party for any damages whatsoever, even if it had been advised of the possibility of damage.