Skip to main content
  • Deployments
  • Mainnet
On this page

Hardware

We recommend selecting an all-purpose server with:
  • 4 or more physical (or 8 virtual) CPU cores
  • At least 500GB of SSD disk storage
  • At least 16GB of memory
  • At least 100mbps network bandwidth
The usage of the blockchain grows, plus it may be needed to bootstrap external chain nodes, so the server requirements may increase as well, so you should have a plan for updating your server as well.

Prerequisites

Golang

This project requires Go version 1.22 or later. Install Go by following the instructions on the official Go installation guide.

Linux installation

Install the latest version of Golang
Remove any previous Go installation and install the new version
Add /usr/local/go/bin to the PATH environment variable. You can do this by adding the following line to your $HOME/.profile or /etc/profile (for a system-wide installation):
Verify that you’ve installed Go by opening a command prompt and typing the following command

Build essential

Install essential tools and packages needed to compile and build the binaries.

Int3face node

Build and install the binary

Int3face node provides CLI commands for submitting inbound and outbound transfers and other queries. To install Int3face node, download the binary from the releases page or clone the repository to your local machine from Github. Please contact the Int3face team for accessing the Int3facechain/bridge repository.
Then, check out the last released version. Currently, it’s v0.2.7.
At the top-level directory of the project execute the following command, which will build and install the int3faced binary to $GOPATH/bin.

Verify the installation

Initialize node

Use int3faced to initialize your node (replace the <your_moniker> with a name of your choosing):

Download genesis

Download the genesis.json file and place it into the Int3face configuration directory (~/.int3faced/config by default).

Download app config

Download the config.toml file and place it into the Int3face configuration directory (~/.int3faced/config by default).
The next step is to set your moniker in config.toml instead of the default one. You can do it by modifying the moniker field at the top of the config.toml file. Besides that, you can modify the config if it’s needed, but make sure to keep all the default ports and persistent peer addresses.

Import validator key

You can either create a new key for your validator or import an existing key.

Create new key

Don’t forget to save the mnemonic!

Import existing

Sync the node

We use a state snapshot to sync the state of the node. For state syncing, the config.toml file must be properly set, which is already done if you use the config from this repo. If you want to know more about this process, feel free to refer to the documentation
  1. https://docs.cometbft.com/v0.37/core/state-sync
  2. https://docs.cosmos.network/main/user/run-node/run-node#state-sync

Download and Run update_trust.sh script

Start the node

The following command starts the node. Note that after starting, the node should sync first, which may take some time until you can start using it.

Top up the account

Contact the Int3face team and provide your validator’s account address to top it up.

Get your Tendermint validator public key

Firstly, you need to get your Tendermint validator public key. You must get is as it will be necessary to include in the transaction to create your validator. If you are using Tendermint’s native priv_validator.json as your consensus key, you display your validator public key using the following command.
The output looks like this

Submit validator creation

Now that you have you key imported, you are able to use it to create the validator. To create the validator, you will have to choose the following parameters for your validator:
  • moniker
  • commission-rate
  • commission-max-rate
  • commission-max-change-rate
  • min-self-delegation (must be >1)
  • website (optional)
  • details (optional)
  • pubkey (gotten in previous step)
If you would like to override the memo field, use the --ip and --node-id flags. An example create-validator command looks like this:

Start a background service

You will need some way to keep the int3faced start process always running. If you’re on linux, you can do this by creating a service.
Service’s logs are stored into the $HOME/.int3faced/logs/ directory. Then update and start the node:
You can check the status with:
And disable, stop, or restart the service:
Logs are available using the following command: