BUIDL-Weekly: 20JUN22 - 26JUN22

Dev Update

BUIDL-Weekly: 20JUN22 - 26JUN22

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: 20JUN22 - 26JUN22

SynthVault Claim Drop | SPIP-105

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

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

NOWNodes Listing Completed

As mentioned in a previous weekly update, NOWNodes mentioned they were going to list SPARTA, this is now completed. This doesn't really change much for the end-user, you always could access BSC/BNBChain nodes thru NOWNodes which obviously includes SPARTA in its ecosystem, however, now SPARTA & the logo are also listed under 'tokens' on their website


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 the 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/

  • Created two new useStates for searchQuery & tableArray
  • On home search input change, setsearchQuery() then make searchQuery a dependent in useEffect to then run sorting & search filtering logic to update tableArray
  • And .map() the table array instead of the function inside the JSX
  • This led to much better search behaviour, when you type in a search query it will update the filtered list almost instantly now instead of there being a varying delay

Synth Positions | 'Currently worth' is wrong

  • Changed all instances of viewOverall==='sparta' to viewOverall==='units'
  • Changed all instances of viewPool==='sparta' to viewPool==='units'
  • This fixed the incorrect positions 'currently worth' values and/or icons issues

Refactor localStorage -> Redux

  • Added an 'app' Redux store
  • Rewrote the settings component to use the new 'app' store instead of localStorage
  • Changed the getSettings() function call to instead use the new app store to get the user's selected slip tolerance in src/containers/Swap/swapTokens.js
  • Padded out the new app redux store with commented-out placeholders for all items we use in local storage. ie. assetSelected1 & assetType1 etc
  • Left one of those items uncommented: settings and reducers and actions to handle initial state (pulled from local storage if available) and user-triggered state changes (set new gas rate & slip tolerance)
  • The settings item will act as a followable example for tackling the other LS items for the rest of this GitHub task
  • Deleted the getSettings() function from src/utils/web3.js (this is now 'get'-able from the redux store)
  • Using redux for the gasRate meant ideally deleting the getProviderGasPrice() function, so every 'write' RPC call/action was modified to use the redux states value instead of localStorage. This is an in-between change and may seem like some double-handling (it is), but will be refactored once the remainder of this GitHub issue is completed

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 a staging deploy workflow for easier contributor viewing/sharing
  • Added a variable set for STAR_SIZE & changed the color closer to the 'Spartan Red'
  • Added black bg to the CTA buttons
  • Converted footer into a simple single-line footer with the last build date for staging/dev and pushed the other 'token/supply' logic from the footer into its own module
  • Removed unused files like footer styles, footer2 & jumper
  • Added hover state to the nav menu links
  • Removed placeholder text and plugged in the contentful data for the landing section

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

  • Restructured contracts into folders, moved all the older arena looter stuff into its own folder
  • Created a folder for UpDownArena contracts
  • Ran through and added first-sweep of variables, interfaces, structures and action functions to the UpDownArena contract to give us something to build off of

A general outline of possible future UpDown contracts:

  • UpDownArena is an idea for a price prediction game where you stake assets and guess whether the pool-derived price will be up or down at the finalization date
  • The staked assets get added asymmetrically to the underlying pool and are held as a prize pool for the correct guesses
  • Hopefully, this can be all kept on chain and operated by the community, one idea to make this happen is to incentivize anyone (using a small percentage of the prize pool) to call a function after the game is closed to help derive the price and finalise the winners etc
  • Once finalised, the winners can call a claim function to claim their share of the prize in either the TOKEN, SPARTA or LP units

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.