Rebrand & Farming Redesign Are Here!

Spore Engineering
6 min readMay 22, 2021

--

Hello!, redesign is finally here!, and not just that!, we rebranded our logo too!

New SPORE logo.

Our staking and farming pools contracts are audited, we are listed on Coingecko and Coinmarketcap price listings, and also on Finexbox and Coinsbit exchanges, visit our official site if you want to know more.

So, what’s new?

The new UI design is meant to be more user friendly, addressing many of people’s concerns and feedback based on our previous interface.

The SPORE staking module is the “main one” or “bank”, this is because all the yield generated by the rest of the liquidity pools are in SPORE, meaning that all the yield can be staked here to gain more compound interest upon what is already being generated.

This pool is represented on the left side of the UI for a better generalized and global visualization of the funds being staked, also this will help when you stake directly from liquidity farms, to keep track of the amounts in just once screen.

The SPORE staking module has the lowest APR (and reward per block), this is because the risk for operates in this pool is lower in comparison with the rest of the farms in which you provides liquidity.

One of the things most people complains was the wallet compatibility that the old site has (pretty much builded from scratch by me), this is why we decided to incorporate a proper library this time, that can address this matter and also provide a wide range of options to the final users, that’s why we ended up integrating the Web3Modal which brings a lot of options and the possibility of extend it to more wallet providers/chains if needed.

Web3Modal example in the new platform redesign.

Another of the main concerns that people has, was related to the stake button inside every farm module, because on pressed yield disappeared from balance giving no user notification of this, nor where these funds goes, and it was a bit confusing.

That’s why we decided to improve usability in the redesigned version of the pools, now, when you press the stake button on each farming pool, the balance will be reflected automatically in the SPORE staking pool in the left side of the UI, giving the user a much more global visibility over their funds.

This button only acts as a “shortcut” to claim the current liquidity pool yield, and then staking it automatically in the SPORE farming module (2 transactions), this action has to be this way because contracts doesn’t have this functionality built in.

All the yield generated by the farming and staking pools are in SPORE, that’s why the stake button besides the claim one stakes on the SPORE farming module pool, and not in the same liquidity pair pool which generates the yield.

Example of where the funds will be reflected once staked.

This is how each liquidity farming pool is listed now, providing with all the necessary information the user needs in order to evaluate and decide in which pool to participate in, based on updated APR and total staked amount.

Liquidity farming pools listed based on APR.

Each pool will have its own indicators to provide a much easier way for users to identify the pools they have participation in (staked amount).

Gray icons means that user doesn’t have staked amount on that pool.

Once the pool is displayed by the user, they will have all the necessary tools and information to operate on it.

Now all indicators have their amounts represented in tokens and US$, providing a better visualization and interpretation of the assets being used by the users.

From this view you can easily add liquidity on each farm with the “Add Liquidity” button, it will takes the users directly to the liquidity pair pool inside our private pancakeswap v1 interface fork.

Once you have liquidity pair tokens on your wallet, you can stake them with the stake button, and unstake them anytime you want, there’s no fees at the moment for stake/unstake/claim.

You can track live the rewards being generated by each pool, all yield and reward information is updated every 15 seconds (on each block mined), so you can check real-time how your yield grows, and claim your rewards to your wallet whenever you want, there’s no minimum.

Liquidity farm pool once is displayed by the user.

However, some pools may need a special NFT to be accessed with, in order to enable the user to operates on it, for this purpose we have an NFT store enabled to sell different kind of complements for our products.

DOT-SPORE pool requires an access card NFT.

What are the base reward per block of each pool?

  • SPORE STAKING: 0.003 SPORE per block mined.
  • DOT-SPORE: 0.0075 SPORE per block mined.
  • ETH-SPORE: 0.0075 SPORE per block mined.
  • SPORE-BNB: 0.006 SPORE per block mined.
  • CAKE-SPORE: 0.006 SPORE per block mined.
  • DAI-SPORE: 0.006 SPORE per block mined.
  • USDT-SPORE: 0.006 SPORE per block mined.
  • SPORE-BUSD: 0.006 SPORE per block mined.
  • SPORE-USDC: 0.006 SPORE per block mined.

How APR is calculated?

Each time a block is mined, the accumulative reward per block increases, and is based on this value that APR is calculated for each pool.

For further reference on the formula, you can check the official EIP from which our contracts are inspired.

Here is an example:

ACCUMULATIVE_REWARD_PER_BLOCK
SPORE_TOKEN_PRICE
POOL_TOTAL_STAKED
POOL_STAKED_TOKENS_PRICE
YEARLY_ASSIGNATIONS

ACCUMULATIVE_REWARD_PER_BLOCK = ACCUMULATIVE_REWARD_PER_BLOCK + (REWARD_PER_BLOCK/TOTAL_STAKED)

APR = (((ACCUMULATIVE_REWARD_PER_BLOCK * SPORE_TOKEN_PRICE) * YEARLY_ASSIGNATIONS) / (POOL_TOTAL_STAKED * POOL_STAKED_TOKENS_PRICE))

Here is the same example but taking the SPORE module as reference for the values:

ACCUMULATIVE_REWARD_PER_BLOCK = 0.4762629511214922
SPORE_TOKEN_PRICE = $1.4
POOL_TOTAL_STAKED = 24,890
POOL_STAKED_TOKENS_PRICE = $1.4
YEARLY_ASSIGNATIONS = 2102400 (blocks in a year)

APR = (((0.4762629511214922*$1.4)*2102400)/(24,890*$1.4))
((0.6667681315700891 * 2102400) / 34,846)
1,401,813 / 34,846
40.2288

Official Links

Final thoughts

We will miss you :’(

First staking module UI

because of my IT background I tend use pretty often the word “user” when I explain scenarios referring to people’s actions, but it’s just because I “believe” it’s more easy and understandable in that way, nor that I’ve believe people are just “users” (it cares me enough to make a disclaimer about it haha).

--

--