BUIDL-Weekly: 27JUN22 - 03JUL22

Dev Update

BUIDL-Weekly: 27JUN22 - 03JUL22

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: 27JUN22 - 03JUL22

Presearch Monthly Giveaway

A big congratulations to the Spartan community who made our collective voice heard for the Presearch monthly advertising giveaway! We won the first one and will have 25,000 PRE to try out keyword staking for the month. Thank you to Presearch for this opportunity to try out the platform and potentially work closer together in the future!

As we all know, Spartan Protocol is an open organisation with a no-middleman mentality and therefore no budget for traditional advertising. Presearch shares similar values as our community along with its search engine that values decentralisation and privacy. This in turn feels like a magical connection that should be explored, the advertising credits will be utilised with the help of the Presearch team and the wider community as a first step towards leveraging the utility of their ecosystem

SynthVault Claim Drop | SPIP-105

If you missed the SPIP-105 discussions, get up to date via this article. The SynthVault claim percentage has now completed its wind down to 0%. This means SynthVault stakers will no longer receive any bootstrap-phase incentives for staking in the vault.

SynthVault stakers are advised to withdraw and melt their synths to SPARTA and then swap to their desired assets.

Bear? Bull? 🤷‍♀️ BUIDl!

Thanks to community member AO for tweeting out a reality-check this week, reminding us that open organisations like Spartan Protocol have no cash burn to worry about, our community will BUIDl no matter the market conditions and sentiment. Our community has suffered some brutal price action, but the underlying fundamentals remain strong and unchanged.

The protocol continues to operate without centralised dependence and the community continues to seed and grow new contributors of all shapes and sizes through community-shared education and support.


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 June report here.


Community DApp

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

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

General

  • Remove all remaining eslint disable/ignore lines and change logic as required
  • Removed the placeholder 'notifications' feature from Approval (this will be a feature to tackle soon)
  • Added some selected asset validity checks to positions components
  • Tested and update list of RPCs for mainnet and testnet

Liquidity, Swap & Synths Component Trees

  • Removed all the getPool() && getToken() && getSynth() etc logic in place of some local state management (update the local state based on changing deps and pull info from local state instead of running filter logic 100s of times constantly)
  • Major refactor and cleanup, these pages should be a lot more responsive, consistent and user friendly now

Pools/Home Component Trees

  • Moved the state for the array of pools/synths etc to the parent component
  • Moved the sorting/filtering logic up to the parent too
  • Moved search logic to parent
  • Major refactor and cleanup, the sorting & searching logic should be a lot more responsive now, however still room for a lot of improvement overall (maybe add some lazy loading too)

New-Proposal Component

  • General code clarity improvements
  • Moved static constants outside the component
  • Changed default/init & 'clear' value of selectedType to index 3 so that the default selected proposal type is not bond related

Refactor LocalStorage -> Redux

  • Added asset1 && asset2 && asset3 && asset4 to the App Redux store along with logic to try grab from localstorage on load and fallback to hardcoded defaults if not available or invalid
  • Added chainId to the App Redux store along with logic to grab from localstorage on load with a fallback to 56 (mainnet)
  • Added addresses to the App Redux store along with logic to grab from localstorage on load with a fallback to the constant array for mainnet
  • Added abis to the App Redux store along with logic to grab from localstorage on load with a fallback to the constant array for mainnet
  • Added reducers for all new state items, to set the store's state and also localStorage on change
  • Actions added for all new state items
  • Replaced all window.localStorage.setItem() instances with their new relevant Redux dispatch action
  • Replaced all instances of local storage AssetSelected1 && AssetSelected2 && AssetSelected3 && AssetSelected4 && AssetType1 && AssetType2 && AssetType3 && AssetType4 with Redux useApp().asset1, 2, 3, 4
  • Replaced all instances of local storage getAddresses() with Redux useApp().addresses
  • Replaced all instances of local storage getNetwork().chainId with Redux useApp().chainId
  • Replaced all instances of changeNetworkLsOnly() with appChainId() redux dispatch action
  • Updated all useEffect deps throughout to prioritize using local states instead of local storage or global states (where it made sense)

To do:


Protocol Site

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

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

new-site-tailwind branch changes:

  • Contributors section logic extended to support multiple GitHub repos
  • Contributors section logic extended to support custom entries from Contentful
  • Improved subtitle backgrounds
  • Added resize observer polyfill for older devices
  • Added some debug logs for three.js to help with device compatibility later down the track
  • Added space between navbar items

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 longer-term plans to iterate towards becoming a swap aggregator for BNBChain and potentially multi-chain after that

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.