# Getting Started

Welcome to the Ternoa wiki, the hub for those interested in learning, building, or maintaining the Ternoa network. This documentation will provide you with everything you need to get started with Ternoa as a user or developer.

## What is Ternoa?

[Ternoa](https://www.ternoa.network/) is a layer 1 blockchain built on substrate and open source. Ternoa designs infrastructure to accelerate web3 development by making next-generation utility NFTs easy to build on our blockchain. The Ternoa ecosystem facilitates the adoption of utility NFTs by giving developers a full technological stack and access to independent infrastructure, nodes, developers’ communities, and funding.

Our Utility NFTs include:

* Delegation&#x20;
* Renting&#x20;
* SoulBound&#x20;
* Royalties&#x20;
* Secret (coming soon)&#x20;
* Capsule (coming soon)

## Learn

A step by step tutorial to start with Ternoa. Here you will learn everything with token CAPS management and get new experience with creation, minting and trading NFTs.

{% content-ref url="/pages/8WhDdgz819VYmAioiMsN" %}
[Ternoa Wallet](/learn/ternoa-wallet)
{% endcontent-ref %}

{% content-ref url="/pages/W39eQVht088c9jiifKKt" %}
[Ternoa Bridge](/learn/ternoa-bridge)
{% endcontent-ref %}

{% content-ref url="/pages/2ajVWCJl7TardK6l72B9" %}
[Asset Management](/learn/asset-management)
{% endcontent-ref %}

{% content-ref url="/pages/ArzDSlfdl8gAR0tyxCBV" %}
[Staking](/learn/staking)
{% endcontent-ref %}

### Build

All you need to know to build dApps, interact with the Ternoa Blockchain and deploy your own Marketplace.

{% content-ref url="/pages/YQqO82O8S0fZbqHkG8tm" %}
[SDK Javascript](/build/sdk-javascript)
{% endcontent-ref %}

### Maintain

Review how to maintain the Ternoa network.&#x20;

{% content-ref url="/pages/fBURYBmRLVE1X1YZTOm7" %}
[How to run a validator on Ternoa](/maintain/how-to-run-a-validator-on-ternoa)
{% endcontent-ref %}


# Ternoa Blockchain

## What is a blockchain?

A blockchain is a digital concept to store data. This data can be anything from digital assets, account balances, and network states–stored on a ledger that every network user is free to access. This data comes in blocks, so imagine blocks of digital data. These blocks are chained together using cryptographic algorithms, making their data impossible to change and impossible to delete. A blockchain is essentially a digital ledger of digital assets ownership duplicated and distributed across the entire network of computer systems on the blockchain.

## How does Ternoa work?

Ternoa is a layer 1 blockchain, it is open-source and built using the substrate framework. A layer-1 blockchain is the foundation of the blockchain architecture, which validates and executes transactions without support from another network.

#### Ternoa’s blockchain is:&#x20;

* Open source, decentralized and secured by a democratic consensus protocol.&#x20;
* &#x20;Built with Substrate framework using Rust programming language.
* Data records cannot be tampered with, updated or deleted.&#x20;
* Consensus mechanism: Nominated Proof-of-Stake (NPoS), it is a mechanism that allows CAPS holders (Nominators) to nominate Validators by staking their CAPS. This Validator will have the responsibility to run a Node that will validate transactions and keep the blockchain secure. Learn how to nominate validators and stake on Ternoa[ here](https://wiki.ternoa.network/learn/staking/how-to-stake-on-ternoa).
* Forkless upgrade with the ability to update the runtime logic without forking the code base. This enables Ternoa’s blockchain to evolve and improve over time.

#### Why Substrate?

[Substrate](https://substrate.io/) is a Rust-based blockchain development framework created by Parity Technologies, the company behind Polkadot. The Substrate framework was designed to help developers launch a blockchain project in a streamlined and customizable way. They offer a substantial development base using Nominated Proof of Stake (NPoS), which relies on validators rather than miners to govern the blockchain. The framework also provides a substantial development base that is easily updatable and natively deployable on Polkadot, allowing projects to exchange information between other projects in the Polkadot ecosystem.


# Building on Ternoa

Benefits of building on Ternoa

Creating NFTs and building dApps on most blockchains is complex. Ternoa was designed to break barriers for developers, web3 enthusiasts, and entrepreneurs and empower them to save time and money. We believe mass adoption of NFTs is only possible with a fundamental tech evolution.

Ternoa has developed a range of tools to help user adoption: an explorer for users to monitor transactions, a status page to watch real-time status of Ternoa networks, a wallet to interact with native CAPS, NFTs, and dApps, and a Token bridge for ERC20 holders to swap their CAPS to native and use the blockchain. Additionally, Ternoa offers:&#x20;

* Very low transaction fees&#x20;
* Alphanet to test and Mainnet to deploy projects&#x20;
* Ternoa’s transaction speed is fast and can have up to 40,000 transactions per minute&#x20;
* Built using SDK javascript (very accessible and easy to build)&#x20;
* Future-proof, NFTs and dApps on Ternoa are built to be upgradeable and adaptable&#x20;
* No need for smart contracts


# Ternoa Wallet


# Download

How to download the Ternoa Wallet

## Getting started with Ternoa Wallet

Download Ternoa Wallet:

{% embed url="<https://play.google.com/store/apps/details?id=com.ternoa.wallet.prod>" %}

{% embed url="<https://apps.apple.com/us/app/ternoa-wallet/id1562180877#?platform=iphone>" %}


# Create your Wallet

How to create your Ternoa Wallet

To get started, please download the Ternoa Wallet app. It is available in the [Google Play Store](https://play.google.com/store/apps/details?id=com.ternoa.wallet.prod) and the [iOS App Store](https://apps.apple.com/us/app/ternoa-wallet/id1562180877#?platform=iphone)**.**

Once you’ve downloaded Ternoa wallet you can open it and start creating your Ternoa account:

![](/files/BsiX1KicyIjPsS19OLVu)

On the next screen, the app will prompt you to write and store the mnemonic key (12 Random Words) offline just to have it handy.

{% hint style="danger" %}
In case your phone is lost, stolen, or damaged you must have the key penned down to retrieve your Ternoa account. **(Very Important!)**
{% endhint %}

![](/files/NRSCW7EmwRamY36l1klY)

After reentering and confirming your mnemonic key, a user must enter their personal details to finish the account creation. In the next step you will be navigated to the wallet page where you can see your CAPS balance, last transactions, option to **Send/Receive** caps and your NFTs under **My NFTs** tab.

![](/files/hHZTehLlGeSVaZnvfM3P)


# NFT


# Create NFT

How to create an NFT

### To create an NFT, follow the tutorial below:&#x20;

### 1. Go to the NFT tab in your Ternoa Wallet

![](/files/rYBDuHwNjYJaZOoKz3zL)

### 2. C**lick 'Create new NFT'**

<img src="/files/xJu7ijxxZwfVDQlH00Rx" alt="" data-size="original">

### 3. Select 'Choose a file'&#x20;

![](/files/IS6F4eqm3VTPUtgdM8u8)

{% hint style="info" %}
You can upload image, audio, text file, and video&#x20;

* File size: max 30mb
* Allowed extensions: JPEG, JPG, PNG, GIF, MP4 or MOV
* Preview: For audio, text file, & video you will need to add a preview image&#x20;
  {% endhint %}

### 4. Input your NFT data, then click 'Mint now'

![](/files/vRRvnCdEn3gnZomaa0pq)

{% hint style="info" %}
Royalties give you a percentage of the sale price each time your NFT is traded on a Ternoa chain. NFT royalty payments are perpetual and are executed automatically.
{% endhint %}

{% hint style="danger" %}
Once this information is submitted, it is impossible to update.
{% endhint %}

### 5. The NFT initializing process will begin

![](/files/qnsjuZ8LVSXg1UECj64I)

### 6. Confirm Minting transaction fees&#x20;

![](/files/Cs2gbn6jY2ipHgB3NzTV)

### 7. Input password&#x20;

![](/files/rAKRMzhTdtHoGrMGifms)

### 8. Minting begins

![](/files/VHbFCXH0YHRmovIy4C4c)

### 9. NFT creation completed!&#x20;

![](/files/zYHAWpM9hcl8o25tv2YX)

{% hint style="info" %}
It will take a few seconds before your NFT will be visible in your Ternoa Wallet
{% endhint %}

![CREATE NFT](/files/81UEgKnxxqHJME72fe4X)


# Send NFT

How to send NFTs

### To send an NFT, follow the tutorial below:&#x20;

1. Select an **NFT** to send&#x20;
2. Click 'Send to someone'&#x20;
3. Paste the wallet address or click on + to send to a specific account&#x20;
4. Click '**Next**'
5. Confirm the transfer fees&#x20;
6. Input your password&#x20;
7. Transfer **completed**!

![SENDING NFT](/files/YfsjUMVpxIL0QXunteo6)


# Account


# Wallet Address

How to access your Ternoa Wallet address

You can find your **Ternoa Wallet Address** in the **Profile** area of the app.

![](/files/GFtSfsMhSeNE69WsPQ32)


# Change Password

How to change your Ternoa Wallet password

### Change Password

Here you can change the **App Password.**

![](/files/dGtbYkW9MGdX1kc6qzqP)


# Mnemonic Key

How to check your Mnemonic Key

### **Check your** Mnemonic Key

Here you can check your **Mnemonic Key.**

![](/files/wPkNx2gqA8FOb3G5dFVa)


# Contact

How to add contacts and observe accounts

From your **Address Book**, you can add and review recent contacts, and observe other accounts.&#x20;

### Add Contacts

* Go to to your Account
* Click on '**Contact**'
* Click on the +&#x20;
* Enter the account name and wallet address
* Select '**Add contact**'

![ADD CONTACT](/files/77q3GZSg24IvO3dCGK4e)

### Observe Accounts

* Click on one of your contacts profile
* Confirm **Active account changed** by clicking 'OK'

![OBSERVE ACCOUNT](/files/9zqFACdTwsNswXYMmwSz)

You are now in **observation mode**. During observation, you can view your contacts CAPS balance, transactions, and NFTs.&#x20;

To exit observation mode:

* Return to **Contact**
* Click your account name
* Confirm **Active account changed**&#x20;


# Nova Wallet

Nova wallet is a non custodial wallet mobile app that allows you to manage (transfer, stake and so on) your ternoa account let’s see how to set it up.

Download the wallet on your mobile using [this link](https://play.google.com/store/apps/details?id=io.novafoundation.nova.market)

On the starting screen you’ll see the different options to create or import a wallet. If you already have a ternoa wallet click on “import wallet”, if not, please hit “create a new wallet”. If you’re importing an existing wallet, go directly to [this step](#tap-your-passphrase)<br>

<figure><img src="https://lh3.googleusercontent.com/fgGMpan06guMuTSANqVTyzUtyXKeWvaGh6GRobWY_jEvAJI9CPeYwcW927A0G9G2r6Ue4Fyz4goZxNxJ-cMtoW1H794Wpj2A7sgQ2UBB9P4O4z5kcEA8slzHDkOh0m-Z-wC8jmv3CpMGnCiYYQHWvlyhssehaFC4L8JFGwhf5DglXsxVfgs_elypfQ" alt=""><figcaption></figcaption></figure>

### Create a new wallet

Click on “create a new wallet”, you’ll be asked to name your wallet, enter the name of your choice then click on “Continue”

<div align="center"><figure><img src="https://lh3.googleusercontent.com/2z-8YK4k3y8TSoCFZtMNjBPXz_WD31D8qVUBJzUyCEmXXkkSjglvCpAQ7m8u3MWrh8LP3C9qlNHXhkJMtQhT1j6CB44eGLyJKbW48_4nGVa95xbY5Jzq3tkwiDsWxjJbXPKGGOcpJI4kegRs9yUjVYy_JVPNPw8lpc_j0uNXJNyr-hrlH_JUpmm0yw" alt=""><figcaption></figcaption></figure> <figure><img src="/files/ZJDdXGlq3ooael8n7mLl" alt=""><figcaption></figcaption></figure></div>

### Save your passphrase

This is a critical phase, the passphrase is the key to your wallet, it’s crucial to keep it secured and NEVER share your passphrase with anyone (there is no good reason to give it to someone else, even from the Ternoa or Nova staff) Once properly saved, please click on “Continue”

### Tap your passphrase

You will be asked to enter your passphrase on this screen. Proceed and click on Continue. Your wallet is now all set! Congrats!


# Ternoa Bridge

The Ternoa Token bridge is the safest and fastest way to swap between\
**ERC20 CAPS <-> Native CAPS**  &  **ERC20 CAPS <-> BEP20 CAPS**.

![](/files/PkJ8PpeYnMVPtzUE2Hxl)

A blockchain bridge provides a connection that allows for the transfer of tokens between two different blockchain ecosystems. A bridge is required for Ternoa because as of the ICO date, CAPS were ERC-20 tokens. However, native CAPS are necessary to stake, earn rewards and pay transaction fees on Ternoa chain.

This bridge enables CAPS ERC-20 holders to transfer them onto the Ternoa blockchain, on a one-on-one basis.&#x20;

{% embed url="<https://bridge.ternoa.network/>" %}

Unlike many other bridges, the **Ternoa Bridge** will lock your ERC20 CAPS and mint the equivalent in native CAPS on the Ternoa network. In this manner, if you decide to sell your native CAPS, you will need to transfer them back to the Ethereum network by using the Ternoa Bridge again.

{% hint style="info" %}
ERC20 contracts are built using [ChainBridge](https://github.com/ChainSafe/ChainBridge), a modular Multi-Directional Blockchain Bridge to interact with Ethereum and Substrate, based chains networks.
{% endhint %}


# Get Started - Mainnet

How to connect your Ternoa account on Polkadot{.js}

In order to interact with your Ternoa Wallet from your browser to any dApp, you need to get your Ternoa account imported in Polkadot{.js} [browser extension](https://polkadot.js.org/extension/).

### Get your Ternoa account on Polkadot{.js}

Download the extension: <https://polkadot.js.org/extension/>

{% hint style="danger" %}
The Polkadot{.js} extension is not compatible on a mobile browser. To connect your wallet to the extension, you will need to be on a desktop browser.&#x20;
{% endhint %}

### A video tutorial is available below:

{% embed url="<https://www.youtube.com/watch?v=sDut4eICNBk>" %}

If you already have Polkadot{.js} installed, you can either import account from pre-existing seed from your Ternoa Wallet or connect your Substrate address from a hardware wallet.

You can import your Ternoa Wallet directly on the extension by clicking the '+'. **It will be necessary to have your wallet connected to validate transactions**.

![](/files/X46gRHqImE9NBdKtAdpi)

![Your Ternoa account imported in Polkadot{.js}](/files/MYR1eotBFhdtYw8WBQDI)

### You need to buy CAPS ?

You have plenty of options to buy CAPS from centralized or decentralized platforms. You can find the list here: <https://www.ternoa.com/token>&#x20;


# Using the Bridge

How to use the Token Bridge

### It's time to go to the [Token Bridge](https://bridge.ternoa.network/)!

The bridge is extremely easy to use and intuitive, so all the magic happens on the backstage. But let's go through the basic steps to start bridging your CAPS.

![Ternoa Token Bridge](/files/PFL8oOOSnWcSeYGjsi3N)

The way the Bridge works is very simple.

1. Connect your wallet to **Polkadot{JS}** and/or **MetaMask**
2. Select the '**From**' and '**To**' network
3. Enter the amount of CAPS to bridge
   * Note: the minimum is 200 CAPS and the maximum is 200,000 CAPS
4. Approve the contract (only once)
5. Approve the transaction
6. Wait...and your CAPS will arrive at the selected destination.

{% hint style="danger" %}
The Bridge has quantum limitations to reduce network congestion. Therefore, we offer OTC Bridge services for all transfers between Ethereum and Ternoa chain over 1M CAPS. To place a request for an OTC transfer, please contact our support team: <otcbridge@ternoa.network>
{% endhint %}


# ERC20 CAPS <-> Native CAPS

How to bridge ETH (Ethereum) CAPS & Ternoa CAPS

1. On the [Token Bridge](https://bridge.ternoa.network/), click on the drop down menu under **From**

![](/files/r4aeglT6PB0tVPhLR3Vw)

2\. Click the **Ethereum Network** button

![](/files/WusrykAwcHpi7FaCQ3ua)

3\. To connect your wallet, click the "**Connect Wallet**" button

![](/files/7ZW2ND3Nnzwi5fyx21o1)

### with Wallet Connect

1. Click **Wallet Connect**
2. Either scan the QR code with a WalletConnect-compatible wallet or click **Desktop**
3. Choose your preferred wallet from the selection. Now you are connected!
4. Click on the dropdown under the '**To**' button and choose '**Ternoa Chain'**
5. Select '**Connect Wallet**' and connect Polkadot using the Polkadot{.js} [browser extension](https://polkadot.js.org/extension/)
6. Select your desired wallet
7. Enter the amount of ERC20 CAPS in the **Amount** section&#x20;
   * Note: the minimum is 200 CAPS and the maximum is 200,000 CAPS
8. Click **Continue**
9. On the Confirmation pop up, read and agree to the terms
10. Click **Continue**
11. Your Transfer is in progress and will take between 2 to 5 minutes.
12. Once completed, you will see a transaction successful notification
13. To view the transaction, click **View transaction** at the bottom of the notification


# ERC20 CAPS <-> BEP20 CAPS

How to bridge BNB (Binance Smart Chain) & ETH (Ethereum)

### Follow the below steps to Bridge ERC20 CAPS <-> BEP20 CAPS:

![](/files/ByLRwnFCNxR80IsTga41)

{% hint style="danger" %}
Currently the Bridge between BNB (Binance Smart Chain) and Ternoa is not possible. You have to use the Bridge between BNB and ETH (Ethereum), then bridge ETH to Ternoa.
{% endhint %}

1. Go to the **Ternoa Bridge**: [https://bridge.ternoa.network](https://bridge.ternoa.network/).
2. Under **From** select 'Binance Smart Chain' under **To** select 'Ethereum'
3. Click 'Connect Wallet' for each, and choose your preferred wallet from the selection
4. Enter the amount of **BEP20 CAPS** in the Amount section&#x20;
   * Note: the minimum is 200 CAPS and the maximum is 200,000 CAPS
5. Click **Continue**
6. On the Confirmation pop up, read and agree to the terms
7. Click **Continue**.&#x20;
8. Your transfer is in progress and could take up to 45 minutes to be completed.&#x20;
9. Once completed, you will see a transaction successful notification
10. To view the transaction, click **View transaction** at the bottom of the notification

{% hint style="info" %}
The transaction fees will be associated with the 'From' network selected.
{% endhint %}


# Get Started - Alphanet

How to bridge test CAPS on Ternoa & Ethereum

Before using the [Token Bridge](https://alphanet.bridge.ternoa.network/) on Alphanet, you will need to first get your Ternoa account imported in Polkadot{.js}. Once it's added to the Polkadot extension, you can claim Ternoa test CAPS and ETH test tokens.&#x20;

### First, get your Ternoa account on Polkadot{.js}

In order to interact with your Ternoa Wallet from your browser to any dApp, you need to get your Ternoa account imported in Polkadot{.js} [browser extension](https://polkadot.js.org/extension/).

Download the extension: <https://polkadot.js.org/extension/>

{% hint style="danger" %}
The Polkadot{.js} extension is not compatible on a mobile browser. To connect your wallet to the extension, you will need to be on a desktop browser.&#x20;
{% endhint %}

Once installed, you can either import account from pre-existing seed from your Ternoa Wallet or connect your Substrate address from a hardware wallet.

If you have a Ternoa Wallet account, you can import your wallet directly on the extension. **It will be necessary to have your wallet connected to validate transactions**.

A video tutorial is available below:

{% embed url="<https://www.youtube.com/watch?index=6&list=PLNtxVXRDdEx2iwtCBBixKN_GwqcqcUIfH&v=sDut4eICNBk>" %}
How to Add Ternoa Wallet Address to Polkadot JS
{% endembed %}

### Claim ETH test tokens & Ternoa test CAPS

To claim ETH test tokens, you will need to go to the [Goerli Faucet](https://goerlifaucet.com/). Goerli is an Ethereum test network that allows for blockchain development testing before deployment on Mainnet. We use Goerli to drive our tests for the Ethereum network.&#x20;

![](/files/WlEdxCgnD4zxEi06fQBH)

### Secure ETH test tokens on **Goerli:**&#x20;

1. Go to the **Goerli Faucet:** [**https://goerlifaucet.com/**](https://goerlifaucet.com/)
2. Create a free Alchemy account and select '**Signup for free'**
3. Click '**Get started for free**'
4. Enter your first name, last name, email and password
5. Sign in to your email to verify your account. You will be directed to select an ecosystem&#x20;
6. Click '**Etherium**' to get started&#x20;
7. &#x20;Enter a team name and app name, choose the Goerli network in the dropdown
8. Choose '**Free forever**' plan
9. You can '**Skip for now**' the payment info and referral&#x20;
10. Continue past scaling policy and you will be directed to the **Goerli Faucet** homepage
11. Enter your wallet address, and hit '**Send Me ETH**'
12. Check your wallet, you should have an additional 0.25 ETH

#### To claim Ternoa test CAPS on the **Alphanet Faucet,** follow these steps [**here**](/learn/asset-management/caps/claim-test-caps)**.** <br>


# ETH <-> CAPS

Steps for bridging Ternoa native CAPS and ERC20 CAPS

1\. From the [Token Bridge](https://alphanet.bridge.ternoa.network/) on Alphanet, click on the left side of the From button

![](/files/GbAQ6SZwtbTJ0WQtDcFX)

2\. Click the Ethereum Network button

![](/files/cBxJk4TgTgsqQYqIm36B)

3\. To connect your wallet, click "**Connect Wallet**" button

![](/files/4i8en64v3oPVWjFGzlbn)

### with Wallet Connect

1. Click **Wallet Connect**
2. Either scan the QR code with a WalletConnect-compatible wallet or click **Desktop**
3. Choose your preferred wallet from the selection. Now you are connected!
4. Click the left side of the To button and choose "Ternoa Chain".
5. Click the right side of the To button and connect your Polkadot Wallet using the [polkadot.js extension](https://polkadot.js.org/extension/) (chrome/firefox).
6. Select your desired wallet
7. Enter the amount of ERC20 CAPS in the Amount section&#x20;
   * Note: the minimum is 200 CAPS and the maximum is 200,000 CAPS
8. Click **Continue**.
9. On the Confirmation popup, check the *I Have Read and Agree to the Terms* checkbox.
10. Click **Continue**.
11. You should see a Transfer in progress... notification. The transfer will take between 2 and 5 minutes.
12. &#x20;You should see a Transaction successful notification.
13. To view the transaction, click **View transaction** at the bottom of the notification.


# Asset Management


# CAPS

**CAPSULE COIN (CAPS)** is the native coin of Ternoa.&#x20;

Transactions made on the Ternoa blockchain are carried out in CAPS.

They include the following:

* Minting new NFTs
* Adding (collateralizing) data to a NFTs
* Encrypt data attached to a NFT
* Transfer a NFT

Demand for NFTs and for secured and decentralized storage are the two main appreciation factors of CAPSULE COINS on secondary markets.


# Buy CAPS

How to buy CAPS

To use the Ternoa Wallet functionalities to Mint, List and Buy NFTs, you'll need to fund your wallet with **CAPS**. You can purchase CAPS from the exchanges below, send and receive CAPS from other accounts, access test CAPS from the [Alphanet Faucet](https://www.ternoa.com/alphanet), or transfer ERC20 CAPS and BEP20 CAPS from the [Ternoa Bridge](https://docs.ternoa.network/v/bridge/).

## Buy CAPS

* Go to [Ternoa.com](https://www.ternoa.com/)
* Click '**Buy CAPS**'
* Select an exchange&#x20;

You will be redirected to the exchange platform to create an account and purchase CAPS, or swap with another cryptocurrency.&#x20;

![BUY CAPS](/files/aeaasMPEQzEqKosLcZwB)


# Send/Receive CAPS

How to send and receive CAPS

#### **You can send CAPS from your Ternoa Wallet, SubWallet, and Talisman Wallet extensions on the PolkadotJS UI. To send and receive CAPS, follow the steps below:**

## Send CAPS from Ternoa Wallet:

* Go to your wallet: <https://www.ternoa.com/wallet>
* Select Send
* Enter the quantity of CAPS
* Select the address from the list or click on Scan to scan Wallet QR Code
* Select Send

![SEND CAPS WITH TERNOA WALLET](/files/tm3tXA5lwISg1vi47MxF)

Transferred in Seconds...

![CAPS RECEIVED ](/files/SKsbwlQZoNk8LcijiEcs)

## Send CAPS with SubWallet extension from PolkadotJS UI:

{% hint style="danger" %}
Use at your own risk. Best solution is to use Ternoa Wallet to never expose keys
{% endhint %}

![](/files/q2vQBs9HDpTCJobVtdpb)

{% hint style="info" %}
SubWallet is a wallet extension for Dotsama ecosystem.&#x20;
{% endhint %}

* Download the **SubWallet Extension** here: [https://subwallet.app/download.html ](<https://subwallet.app/download.html >)
* Open the extension to create or import an account&#x20;
* Go to PolkadotJS UI: <https://polkadot.js.org/apps/#/accounts>
* Open your SubWallet extension to connect your SubWallet to PolkadotJS UI&#x20;
* From **Accounts tab,** you can select an account to send CAPS from

## Send CAPS with Talisman extension from PolkadotJS UI:

{% hint style="danger" %}
Use at your own risk. Best solution is to use Ternoa Wallet to never expose keys
{% endhint %}

![](/files/YghGTal3pso7pk4PWZJQ)

{% hint style="info" %}
Talisman Wallet is a wallet extension for Dotsama ecosystem.&#x20;
{% endhint %}

* Download the **Talisman Extension** here: <https://talisman.xyz/>
* Open the extension to create or import an account&#x20;
* Go to PolkadotJS UI: [https://polkadot.js.org/apps/#/accounts ](<https://polkadot.js.org/apps/#/accounts >)
* Open your Talisman extension to connect your Talisman Wallet to PolkadotJS&#x20;
* From **Accounts tab,** you can select an account to send CAPS from


# Claim Test CAPS

How to claim test CAPS on Alphanet

To claim **test CAPS**, you must request them. You can claim test CAPS on the [Alphanet Faucet](https://www.ternoa.com/alphanet) and use them on the Alphanet network to: Send and receive CAPS Create and transfer Basic NFTs.

### **To claim test CAPS, follow the tutorial below:**

* Copy your wallet address&#x20;
* Go to the [**Alphanet Faucet**](https://www.ternoa.com/alphanet)
* Paste the wallet address in the blank field&#x20;
* Complete the reCAPTCHA
* Click **Claim**

![](/files/cj2zKUaDfoRvY5EYecxP)

![](/files/lhMGoo9R933lCulil3xW)

{% hint style="info" %}
We have limited the test CAPS distribution on Alphanet to 100 CAPS/24hours. You can claim the next test CAPS only after 24 hours of the first test CAPS issued.
{% endhint %}


# Staking


# How to stake on Ternoa

Nominating validators and staking CAPS

### To nominate validators & stake CAPS, follow the tutorial below:

**You can nominate validators (also known as “staking”) on Polkadot-JS UI using these steps:**

1. Go on the polkadot interface: <https://polkadot.js.org/apps/#/explorer>
2. Switch to **Ternoa Network** :&#x20;
   1. Open the network list by clicking on the down arrow in the top menu
   2. Click "**Live Networks**" and select "T**ernoa**"
   3. To validate, click on the "**Switch**" button at the top of the sidebar

#### You are now connected to to the Ternoa network and can **start staking CAPS** following those steps:

1. [Create a Polkadot account](https://wiki.polkadot.network/docs/en/learn-account-generation) if you don’t have one already

{% hint style="info" %}
Please note **it is recommended to create two accounts:** one to use as the controller account and one to use as your stash account. Learn more about this [here](https://wiki.polkadot.network/docs/en/learn-staking/#accounts) and in the video tutorial below.&#x20;
{% endhint %}

{% hint style="danger" %}
**Make sure you leave a small amount of CAPS transferrable in your stash account and that your controller has more than 1 CAPS in it**. This is in order to have enough liquid funds for paying transaction fees when bonding and unbonding funds.
{% endhint %}

&#x20;2\. Go to the [Polkadot-JS UI main page](https://polkadot.js.org/apps/#/explorer)

&#x20;3\. Under the Network tab at the top click the **Staking** option

&#x20;4\. Click “**Accoun**t” tab (on top). It may take a while to load

&#x20;5\. Click the “**+ Nominator**” button (top right)

&#x20;6\. Choose your **Stash** and **Controller** accounts

&#x20;7\. Select the amount you want to bond and the rewards destination and click "**Next**"

&#x20;8\. In the next screen select your validators

{% hint style="info" %}
Please make sure you've read the article on [how to select validators](https://support.polkadot.network/en/support/solutions/articles/65000150130).&#x20;
{% endhint %}

&#x20;9\. Once you're done, click “**Bond and Nominate**”

10\. Enter the password for your account and click "**Sign & submit**"

#### You can also follow this video tutorial:

{% embed url="<https://youtu.be/7g4RaUyeTBQ>" %}


# Glossary

Ternoa Ecosystem Terms

### Alphanet

Test network on the Ternoa blockchain. The goal of the Alphanet network is to test features before the final version is released on the Mainnet blockchain. The tokens on Alphanet have no real value, so developers can deploy, test, and execute their projects on a functioning blockchain freely.

### Blockchain&#x20;

A blockchain is a digital concept to store data. This data can be anything from transactions, account balances, and network states–stored on a ledger that every network member is free to access. This data comes in blocks, so imagine blocks of digital data. These blocks are chained together using cryptographic algorithms, making their data impossible to change.

### Bridge

A blockchain bridge provides a connection that allows for the transfer of tokens between two different blockchain ecosystems.&#x20;

### CAPS&#x20;

CAPS is the native token of the Ternoa blockchain. All transactions on the network are carried out in CAPS.&#x20;

### dApp

A decentralized app (also known dApp) operates on a blockchain or peer-to-peer network of computers.

### Delegation&#x20;

Ternoa’s NFT delegation allows NFT owners to share the utilities of their NFTs without giving up ownership - there will be no exchange of money, you do not give up your NFT ownership rights, and the NFT stays in your wallet.

### Explorer&#x20;

A software that allows users to access details regarding blocks, addresses, and current and past transactions.&#x20;

### Layer-0&#x20;

Layer-0 blockchain is the underlying infrastructure that provides the architecture for projects to build.&#x20;

### Layer-1&#x20;

Ternoa is a layer-1 blockchain A layer-1 blockchain is the foundation of the blockchain architecture, which validates and executes transactions without support from another network.

### Mainnet&#x20;

The primary Ternoa network, where actual-value transactions occur with native CAPS to pay transaction fees and for staking. Mainnet is the final production network for blockchain projects and accessible to users, validators, and stakers.

### NFT&#x20;

NFTs (non-fungible tokens) are unique cryptographic tokens that exist on a blockchain.

### Nominated Proof of Stake **(NPoS)**

A method used to validate transactions and keep the database secure. With proof of stake, a validator is nominated and chosen to validate a transaction.

### Nominators&#x20;

Nominators are CAPS holders who contribute to the security of the network by nominating validators to participates in the consensus of the protocol.&#x20;

### Pallets&#x20;

A Substrate module that provides all functionalities of a feature. More info [here](https://docs.substrate.io/reference/frame-pallets/).&#x20;

### Renting&#x20;

NFT Renting allows individuals to rent NFTs they would like to borrow. A borrower can rent an NFT and gain access to exclusive content or experiences. At the same time, an NFT owner can rent their NFT to share its utility and earn passive income.

### Royalties&#x20;

NFT royalties give the original NFT creator an option to receive an automatic percentage of the sale price each time their NFT creation is resold.

### SDK&#x20;

Software developer kit (SDK) is a set of tools Ternoa provides developers to build on the Ternoa chain.&#x20;

### Seed Phrase&#x20;

A seed phrase is a group of random words generated by the Ternoa wallet, which can be used if a user forgets their password.&#x20;

### SoulBound&#x20;

SoulBound Tokens (SBTs) are non-transferable NFTs representing credentials and are linked to ‘souls’, a type of address that establishes a source.

### Staking&#x20;

Staking on Ternoa is a validation tool that involves committing your CAPS to maintain the network and confirm transactions.

### Substrate&#x20;

Substrate is a Rust-based blockchain development framework created by Parity Technologies, the company behind Polkadot. The Substrate framework was designed to help developers launch a blockchain project in a streamlined and customizable way.

### Validators&#x20;

Validators provide the infrastructure and maintenance for the Ternoa network. A validator is a virtual entity that lives on the Ternoa Chain and participates in the consensus of the protocol. Learn how to become a [validator here](https://www.ternoa.com/validators).&#x20;

### Wallet&#x20;

The Ternoa Wallet allows you to view your CAPS balance in real time, receive or send CAPS to another Ternoa wallet, create and send NFTs, and view dApps. You can download [here.](https://www.ternoa.com/wallet)&#x20;

### Wallet Address

String of characters that is generated when a Ternoa wallet is created. This address is used to receive assets in your wallet.&#x20;


# Introduction

Ternoa ecosystem is composed of two networks, one for development: **Alphanet** and one for production: **Mainnet**.

**Alphanet network** is the test network on the Ternoa blockchain. The goal of the Alphanet network is to test features before the final version is released on the Mainnet blockchain. The tokens on Alphanet have no real value, so developers can deploy, test, and execute their projects on a functioning blockchain freely.

**Mainnet network** is the primary Ternoa network, where actual-value transactions occur with native CAPS to pay transaction fees and for staking. Mainnet is the final production network for blockchain projects and accessible to users, validators, and stakers.


# Alphanet

## **IPFS Server**&#x20;

IPFS is a great fit for storing and addressing data for NFTs. \
\
**IPFS Server URL :**  <https://ipfs-dev.trnnfr.com/>

**Note :**  Access to IPFS API should be using API Keys.\
\
You have to add the following header  :  apiKey=xxxxxxxxxxxxx

```shell
curl --location --request POST 'https://ipfs-dev.trnnfr.com/api/v0/add' \
--header 'apiKey: xxxxxxx.xxxxxxxxxxxxxxxxx' \
--form 'file=@"/path/to/file.jpg"'
```

Another example in NodeJS :

```javascript
var request = require('request');
var fs = require('fs');
var options = {
  'method': 'POST',
  'url': 'https://ipfs-dev.trnnfr.com/api/v0/add',
  'headers': {
    'apiKey': 'xxxxxxx.xxxxxxxxxxxxxxxxx'
  },
  formData: {
    'file': {
      'value': fs.createReadStream('/path/to/file.jpg'),
      'options': {
        'filename': 'file.jpg',
      }
    }
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
```

### **Indexer**&#x20;

**Indexer URL :**   [**https://indexer-alphanet.ternoa.dev/**](https://indexer-alphanet.ternoa.dev/)

### **Dictionary**

**Dictionary URL :**  <https://dictionary-alphanet.ternoa.dev/>

### **RPC Chain WSS**&#x20;

**RPC Chain WSS:** [**https://alphanet.ternoa.com**](https://alphanet.ternoa.com/)&#x20;


# Mainnet

## **IPFS Server**&#x20;

IPFS is a great fit for storing and addressing data for NFTs. \
\
**IPFS Server URL :**  [https://ipfs-mainnet.trnnfr.com/](https://ipfs-dev.trnnfr.com/)

**Note :**  Access to IPFS API should be using API Keys.\
\
You have to add the following header  :  apiKey=xxxxxxxxxxxxx

```shell
curl --location --request POST 'https://ipfs-mainnet.trnnfr.com/api/v0/add' \
--header 'apiKey: xxxxxxx.xxxxxxxxxxxxxxxxx' \
--form 'file=@"/path/to/file.jpg"'
```

Another example in NodeJS :

```javascript
var request = require('request');
var fs = require('fs');
var options = {
  'method': 'POST',
  'url': 'https://ipfs-mainnet.trnnfr.com/api/v0/add',
  'headers': {
    'apiKey': 'xxxxxxx.xxxxxxxxxxxxxxxxx'
  },
  formData: {
    'file': {
      'value': fs.createReadStream('/path/to/file.jpg'),
      'options': {
        'filename': 'file.jpg',
      }
    }
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
```

### **Indexer**&#x20;

**Indexer URL :**  [**https://indexer-mainnet.ternoa.dev/**](https://indexer-mainnet.ternoa.dev/)

### **Dictionary**

**Dictionary URL :**  <https://dictionary-mainnet.ternoa.dev/>

### **RPC Chain WSS**&#x20;

**RPC Chain WSS:** [**https://mainnet.ternoa.network**](https://mainnet.ternoa.network/) **and** [**https://mainnet.ternoa.io**](https://mainnet.ternoa.io)


# SDK Javascript


# Installation

{% hint style="info" %}
This package provides TypeScript types, but you will need TypeScript version 4.2 or higher to use them properly.
{% endhint %}

### Add this NPM package to your project[​](https://docs.x.immutable.com/sdk-docs/core-sdk-ts/installation#add-this-npm-package-to-your-project) <a href="#add-this-npm-package-to-your-project" id="add-this-npm-package-to-your-project"></a>

```
npm install ternoa-js
```


# Quickstart

An API instance must be initialize using the *initializeApi* function in **ternoa-js/blockchain** before calling some SDK functions. The default chain endpoint is:&#x20;

`DEFAULT_CHAIN_ENDPOINT = "wss://alphanet.ternoa.com"`.

It can be modified by passing a new endpoint as a parameter to the *initializeApi* function.

Functions are organized by theme. In the example below, the import of *generateSeed* and *getKeyringFromSeed* from the subpath **ternoa-js/account** allows us to generate a new account and display its address.

```typescript
import { generateSeed, getKeyringFromSeed } from "ternoa-js/account";

(async () => {
  const account = await generateSeed()
  const keyring = await getKeyringFromSeed(account.seed)
  const address = keyring.address
  console.log("Your fresh public address is: ", address)
})().catch((e) => {
  console.log(e)
})
```

Among all the features provided by the Ternoa SDK, this short snippet of code allows you to create an NFT, submit and sign it at a glance.

This single line ***createNft*** function, require a few parameters :&#x20;

* some `offchainData` metadatas,
* a `royalty`,
* a `collectionId`

&#x20;if you want this NFT to belong to a collection, a boolean to define its `isSoulbound` status, the `keyring` to sign and submit the transaction, and a `waitUntil` callback parameter, to define at which point we want to get the results of the transaction execution.

```typescript
import { createNft } from "ternoa-js/nft"
import { generateSeed, getKeyringFromSeed } from "ternoa-js/account"

const createMyFirstNFT = async () => {
  try {
    // We initialize an API instance connected to the Alphanet chain
    await initializeApi()

    // Here we create, sign and submit the NFT transaction with your keyring
    await createNft("My first NFT", 10, undefined, false, keyring, WaitUntil.BlockInclusion)
  } catch (e) {
    console.log(e)
  }
}
```


# How to run a validator on Ternoa

This guide will explain the basic principles on how to run a validator node and how to stake CAPS. A more detailed approach will be available later in the form of a workshop and/or gitbook documentation.

The alpha version of the workshop can be found [here](https://docs.google.com/presentation/d/1rjMtUB-foRfSkruRWzVbFqKS1VRVvqmk4ohxJ_lNYrk/edit?usp=sharing). We recommend you to go through the slides since most of the guide is based upon that same workshop.

> Make sure that you first fully read the guide before you start doing anything.

{% embed url="<https://youtu.be/RhYCDSq0Pv0>" %}

## Getting the binary (node/client)

There are two ways to get the binary: from the github repo or to build it.

The easiest approach is to directly get the binary from the Ternoa chain github [repo](https://github.com/capsule-corp-ternoa/chain). From the github repo website, click on the Releases link and find the latest release with a binary attached to it.

The second approach is to manually build the client. You can follow the how-to-build-this-repo guide to understand how to do it. My recommendation is if you are going to follow this method, make sure that you have at least a quad core CPU otherwise it will takes ages to build.

Whatever method you choose, make sure that once you have the binary that you place it in the right directory. Usually the place is `/usr/bin` or `/opt/ternoa`.

## Running the node

The key in correctly running the node is to use the right flags to connect to the right chain. Ternoa is currently running two networks, Ternoa Alphanet and Ternoa Mainnet, and depending if you want to deploy a test validator or a mainnet validator you need to pass either `--chain alphanet` or `--chain mainnet`, respectively.

Here is an example on what flags you can/should use:

```
/usr/bin/ternoa --name MyFirstNode --chain alphanet --base-path /opt/node-data --validator --state-cache-size 0 --execution wasm
```

Let's see what those flags do:

* name `X` - It sets the name of the validator node. `X` should be something unique.
* chain `X` - `X` can be either `alphanet` or `mainnet`. This tells the node which chain specification to use.
* base-path `X` - Defines where the blockchain data will be stored. If have an external disk attached, you that external disk for storing the data.
* validator - This runs the node in validator mode
* state-cache-size 0 - This fixes a bug that substrate has.
* execution wasm - This runs the node in wasm mode. This is also used to fix a bug that is introduced in the substrate native runtime.

We recommend you that you create a systemd service file which will run the node in the background and start it up on every restart. Instructions for that you can find in the linked workshop presentation.

Once the node is running, it will be visible in the telemetry UI and it will take time to sync up. #

> [Alphanet Telemetry UI](https://telemetry.polkadot.io/#list/0x18bcdb75a0bba577b084878db2dc2546eb21504eaad4b564bb7d47f9d02b6ace), [Mainnet Telemetry UI](https://telemetry.polkadot.io/#list/0x6859c81ca95ef624c9dfe4dc6e3381c33e5d6509e35e147092bfbc780f777c4e)

While it's syncing up, you can run the following command to generate the session keys:

```bash
$ curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "author_rotateKeys", "params":[]}' http://localhost:9933 &> session_keys.txt
# The session keys will be stored inside the session_keys.txt file. Let’s printout that file.
$ cat session_keys.txt
```

The sessions keys are stored inside the "result" field. Make sure that you store it somewhere safe since it's going to be used in the next part of this guide.

To make sure that the session keys are properly inserted, stop the node and start it again. This is quite important to do because otherwise the next step in this guide might not work.


# Requirements

### Minimum CAPS requirements

The minimum amount of CAPS required to run a validator on Ternoa is **150 000 CAPS**.

### Hardware Recommendations

For the **minimum** specification, we recommend:

* 2 core machine (with a newish server CPU)
* 4 GB DDR4/DDR5 ECC RAM
* 80GB SSD storage.

For **optimal** server we recommend:

* 4 core machine (with a newish server CPU)
* 4GB DDR4/DDR5 ECC RAM
* 160GB SSD storage.

It’s implied that using a slower or older server CPU might not produce desired results.

Besides server grade equipment, using newish Intel i3 series or AMD Ryzen 3 series CPUs would be more than sufficient to run our node.

### Machine Examples <a href="#machine-examples" id="machine-examples"></a>

| **Provider**  | **Configuration**                                                                                               | **Price**       |
| ------------- | --------------------------------------------------------------------------------------------------------------- | --------------- |
| Scaleway      | <p>DEV1-M Development machine: </p><ul><li>3 cores</li><li>4GB RAM</li><li>100GB local storage</li></ul>        | \~$16 per month |
| Digital Ocean | <p>Basic plan droplet; Regular Intel with SSD</p><ul><li>2 cores</li><li>4GB RAM</li><li>80GB SSD</li></ul>     | \~$20 per month |
| Digital Ocean | <p>Basic plan droplet; Premium AMD with SSD </p><ul><li>2 cores</li><li>4GB RAM</li><li>80GB NVMe SSD</li></ul> | \~$24 per month |
| Vultr         | <p>SSD Could Instance </p><ul><li>2 cores</li><li>4GB RAM</li><li>80GB SSD</li></ul>                            | \~$20 per month |


# Install Ternoa

Once you choose your cloud service provider and set-up your new server, the first thing you will do is install Ternoa.

To install Ternoa, use this command line:

```
curl --proto '=https' --tlsv1.2 -sSf https://packages.ternoa.network/ternoa/installer | bash
```

*We've created a script for easy set-up.*

#### Installed 🎉

Once Ternoa is installed, let’s check to make sure that it’s working correctly:

```
ternoa --version
```

You can also restart the Ternoa service using

```
systemctl restart ternoa 
```

or you if you would like to stop it, you should run :&#x20;

```
systemctl stop ternoa
```

to troubleshoot, and check the logs in real-time, you can run the following command:

```
journalctl -f -u ternoa.service
```

Binary installs are available in the following directory: <https://packages.ternoa.network/ternoa/>


# Ambassador Program

<figure><img src="/files/FsykwV2V4myDMoNJEw84" alt=""><figcaption></figcaption></figure>

We want to invite you, our Ternoa community, to become Ternoa Ambassadors and be a vital part of going worldwide! Let's bring Ternoa to every continent on this earth. Become a Ternoa ambassador right now and start earning rewards!

* To connect to our Ambassador program and discover quests follow this link: <https://ternoa.crew3.xyz/questboard>
* To stay up to date on future Ambassador rewards, follow us on Twitter: <https://twitter.com/Ternoa_>

### **Why Become a Ternoa ambassador?**

To build a strong community, Earn Rewards and receive tokens for completing specific tasks. To make it even more compelling, we'll announce the Top 3 ambassadors every half a year who will earn even more rewards.&#x20;

**Ternoa Extended team** - be part of a larger community of enthusiasts and become a key contributor to the Ternoa ecosystem.

Quests won't only help Ternoa; you will gain experience in web3 and build a name for yourself. Improve your skills and gain notable expertise to push your career to new heights.

### **Who is eligible to become a Ternoa ambassador?**

* You're a developer, NFT enthusiast, a web3 leader, an influencer, or a crypto expert.&#x20;
* You're passionate about web3 and blockchain and care about building a strong and long-lasting community for Ternoa.&#x20;
* You are an existing community leader and can promote Ternoa within your group. You are a marketing and content creator.&#x20;
* You love building content and have out-of-the-box ideas. You are a student interested in blockchain and NFTs and want to gain hands-on knowledge of this ever-changing space.&#x20;
* You can still become a Ternoa Ambassador even if you are not tech-savvy.&#x20;

Apply and share with us more details on why you care about Ternoa.

### **What do we expect from you?**

There's no one-size-fits-all to how to be a Ternoa ambassador, but here are some examples:&#x20;

* Promote Ternoa through meetups and AMAs. These meetups can be structured to be both technical and non-technical, so all can participate.&#x20;
* Create compelling content. As the Ternoa community grows, we'll need blog posts, documents, and other content translated into several languages.&#x20;
* Amplify Ternoa News and Announcements.&#x20;
* Help us become a global brand and manage our online communities in various languages and channels (Kakao, Telegram, WeChat, etc.) Set up regular AMAs and Meetups, and bring new people to the Ternoa community.&#x20;
* Complete one-off tasks like creating blog posts, infographics or virtual stickers and helping build our website, among other things. Of course, there are plenty of rewards to win!

### **Quests**

For completing our quests, we will be using Crew3, integrated into a Discord that allows us and our Ambassadors to manage and track each task and its progress.

To have access to the Crew 3 board:&#x20;

* Log in to [Crew3](https://ternoa.crew3.xyz/) with Discord&#x20;

**Here are some examples of the tasks that Ternoa ambassadors can currently complete:**

* Download Ternoa wallet and mint a new NFT
* Host Ternoa meetup
* Follow us on Twitter
* Bring a partnership


# Accelerator Program

<figure><img src="/files/ftvF5WhUBbI2jIiHHniJ" alt=""><figcaption></figcaption></figure>

The Blox and Ternoa have entered a partnership to give builders the opportunity to turn their projects into startups and receive grants and funding.&#x20;

The goal of this program is to bootstrap innovative Web3 projects building top-notch NFT and Metaverse solutions on the Ternoa blockchain. Projects will develop their product and business model with the help of The Blox’s resources during a 3-month acceleration period.

To learn more and apply for the Ternoa Accelerator program [click here](https://www.theblox.co/ternoa-the-blox-accelerator-program/).&#x20;


# Community

## Join the community  <a href="#join-the-community" id="join-the-community"></a>

* Connect with the community and ask questions:  [Discord](https://discord.com/invite/EbqNHbZt9x) | [Telegram ](https://t.me/ternoa)
* Get help, request features and report bugs: [GitHub Discussions](https://github.com/capsule-corp-ternoa)

## Find us on social

* Get the latest updates: [Twitter​](https://twitter.com/Ternoa_) | [YouTube](https://www.youtube.com/channel/UCUYvbtRE5HoWPz7z88V7Khw) |  [Medium](https://medium.com/ternoa) | [LinkedIn ](https://www.linkedin.com/company/ternoa)

## Events

* Meet and network with the Ternoa team and local ambassadors: [Meetup.com ](https://www.meetup.com/find/?slug=los-angeles-web-3-0-group\&eventId=289074202\&keywords=ternoa\&source=EVENTS)


