BUIDL-Weekly: 13JUN22 - 19JUN22

Dev Update

BUIDL-Weekly: 13JUN22 - 19JUN22

Welcome to another weekly wrap-up, Spartans! Thanks to all the community contributors and friends who helped Buidl, promote and support during the week! Read on for the update

BUIDL-Weekly: 13JUN22 - 19JUN22

OpenTheGates Pool Caps Changes

We had 3 pool caps have adjustments this week, USDC, USDT & BTCB. All three pools now have a cap of 5M SPARTA each.

SynthVault Claim Drop | SPIP-105

If you missed out on the SPIP-105 discussions, get up to date via this article. TLDR: SynthVault harvest will reduce, so make sure you harvest before each drop!

The final 1% drop will be occurring next week, so please ensure you have performed a SynthVault harvest to receive the current 1% rate.

WhaleStats Mentions

Whalestats track up to 4000 of the largest BNB Chain wallets (the "whales") and provide some helpful metrics and data for users.

CoinMarketLeague Charts

Don't forget to vote for SPARTA each week, Spartans!

Weekly Community Call / Hangout

Don't forget to tune into the Telegram channel each week with @ReidyPhillip to get updates on the project and broader ecosystem. Join in the discussion with any ideas and questions!

Hosted every Wednesday but subject to change based on community feedback and availability. When the time is confirmed each week, we will do our best to share a reminder on the socials, but this can be difficult because of the distributed nature of the project and organisers.

Weekly LearnToEarn Quiz

Congratulations to the winners of the weekly Spartan Protocol LearnToEarn quiz.

There is a new #LearnToEarn quiz up and live for Spartans keen to learn and win some SPARTA in the process!

Don't forget to ask on socials if you are not sure! The community is there to help and these quizzes are all about learning!

SpartAnalytics Report

Our community collates the public Spartan Protocol data into a PDF report each month covering Google Search (impressions, clicks, devices, keywords & geographical) & Twitter analytics. You can find the full May report here.

Community DApp

GitHub Repo: https://github.com/spartan-protocol/SpartanProtocol-DAppV2

Front-end: https://dapp.spartanprotocol.org/

There was a focus on cleaning up the calls/effects/dependencies and making the swap, synth & liquidity pages a lot more responsive to user interactions and their effected calculations. This (along with some changeover the past weeks) also resulting in a massive reduction in RPC calls and therefore more stable connection to RPCs for the user.


  • Added a custom 'is page in focus' provider to help with other tabs or browsers with the same dapp open from preventing users from changing selected assets
  • Removed all instances of 'focus' and 'blur' event listeners (handled by the provider now)
  • Improved wallet connection behaviour
  • Converted the class styles in src/containers/Common/Navbar/components/AddressConn.js
  • Removed all instances of getNetwork() trigger timers (we reload the dapp on network change now anyway)

Liquidity Page (For 'Add' and also 'Remove') & Synths

  • Pushed all the functional calculation returns into a local state instead of calling in constantly
  • Adjusted the string of dependent calculations / calls to allow a more responsive experience for the user (typing in the input provides a fairly instant calculation of all the other variables now instead of sometimes lagging for many seconds
  • The inputs now clear on asset selection / change

Swap Page

  • Fixed the stablecoin zoom issue with price charts (was zooming into super stable price charts and making them seem super volatile)
  • Pushed all the functional calculation returns into a local state instead of calling in constantly
  • Adjusted the string of dependent calculations / calls to allow a more responsive experience for the user (typing in the input provides a fairly instant calculation of all the other variables now instead of sometimes lagging for many seconds
  • The inputs now clear on asset selection / change

Fix non-serialised error in the stores

  • Went thru every redux store and changed the error to return just the message instead of the toStrong() object

Reserve Store Changes

  • Utilized the loading state to skip calls if other calls are loading (test reduction in RPC calls)

Refactored useEffects & removed exhaustive-deps

  • src/components/Approval/index.js
  • src/components/AssetSelect/index.js
  • src/components/PoolSelect/index.js
  • src/components/Settings/index.js
  • src/components/Share/index.js
  • src/components/WalletSelect/index.js
  • src/components/WalletSelect/tabs/Txns.js
  • src/containers/Common/DataManager/index.js
  • src/containers/Dao/NewProposal.js
  • src/containers/Dao/index.js
  • src/containers/Donate/index.js
  • src/containers/Liquidity/Components/Metrics.js
  • src/containers/Liquidity/LiqAdd.js
  • src/containers/Liquidity/LiqRemove.js
  • src/containers/Liquidity/index.js
  • src/containers/Pools/NewPool.js
  • src/containers/Pools/index.js
  • src/containers/Positions/PoolPositions.js
  • src/containers/Positions/SynthPositions.js
  • src/containers/Swap/index.js
  • src/containers/Swap/swapLps.js
  • src/containers/Swap/swapTokens.js
  • src/containers/Synths/index.js
  • src/containers/Upgrade/Upgrade.js
  • src/containers/Upgrade/index.js
  • src/containers/Vaults/Components/SynthHarvestAllModal.js
  • src/containers/Vaults/DaoVault.js

To do:

Protocol Site

GitHub Repo: https://github.com/spartan-protocol/spartan-site

Front-end: https://spartanprotocol.org/

New layout branch: new-site-tailwind

  • Added three.js library for animated backgrounds
  • Added maath dep for random number generation (we can probably move this in-house later)
  • Added scroll-data-hook to have animations detect and react to page scroll
  • Added tailwindcss-animation-delay plugin
  • Added a lazy-load for the animated background
  • Created the background animation component
  • Created logic to handle changes to the animation based on scroll direction and speed
  • Added error catch to the supply API call
  • Added animations to the text content (headings slide in etc)
  • Deleted old unused files from previous branches
  • Updated more of the layout of each section to the mockups

To do:

Protocol API

GitHub Repo: https://github.com/spartan-protocol/spartan-api

Front-end: https://api.spartanprotocol.org/api/v1/pools

To do:

Protocol Subgraph

GitHub Repo: https://github.com/spartan-protocol/spartan-subgraph

Front-end: https://thegraph.com/hosted-service/subgraph/spartan-protocol/pool-factory

Protocol Contracts V3

GitHub Repo: https://github.com/spartan-protocol/spartan-contracts

To do:

  • Draft up general pool structure

Protocol Resources

GitHub Repo: https://github.com/spartan-protocol/resources

Protocol Docs

GitHub Repo: https://github.com/spartan-protocol/spartan-docs

To do:

Protocol Contracts V1 - V2

GitHub Repo: https://github.com/spartan-protocol/spartanswap-contracts

Ecosystem Project: SpartanSwap

SpartanSwap is just a placeholder for now, but it is a separate project with the intention of building an alternative frontend for users to interact with the Spartan Protocol pools. With a focus on swap functionality to start with and with larger dreams to iterate towards swap aggregation

SpartanSwap Contracts

GitHub Repo: https://github.com/Spartan-Swap/SpartanSwapContracts

SpartanSwap DApp

GitHub Repo: https://github.com/Spartan-Swap/SpartanSwapDApp

SpartanSwap Resources

GitHub Repo: https://github.com/Spartan-Swap/SpartanSwapResources

Ecosystem Project: SpartanArena

SpartanArena is another separate project with a focus on creating subprojects that lean more towards 'gaming'. Some ideas in the works for the future may include an NFT looter game, lottery and a prediction/parimutuel game

SpartanArena Contracts

GitHub Repo: https://github.com/SpartanArena/SpartanArenaContracts

SpartanArena DApp

GitHub Repo: https://github.com/SpartanArena/SpartanArenaDApp

SpartanArena Resources

GitHub Repo: https://github.com/SpartanArena/SpartanArenaResources

Project Information

Community Contribution

Spartan Protocol is at its core a community-built and run project. In this vein, the more contributors, the better. There is a great opportunity for community members to contribute. Please reach out in the community channels if you are interested.

Engage with the community and contributors

Where to find out about all the latest updates or suggest improvements — get involved.