SpartanProtocol
Published in

SpartanProtocol

BUIDL-Weekly: 07NOV22- 13NOV22

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

Don’t forget to vote for SPARTA every day Spartans!

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 at ~11:00 UTC but subject to change based on community feedback and availability. Please check the Telegram channel each Tuesday/Wednesday to confirm the exact time.

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 October report here

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

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

  • added ssutils ABIs
  • added ssutils addresses
  • added helper to get ssutils contract object
  • updated the bond redux store actions and structs to suit ssutils
  • updated logic throughout the dapp to try cater for broken logic from the changes, this will be mainly a case of ‘fix them as we spot them’
  • added an exCuratedPools const to web3.js
  • adjusted most > 1 loading checks to > 0 as the new objects will not have empty details objects/padding
  • removed trigger references to update the dao total weight (is now triggered inside the relevant redux actions and doesnt need to do any RPC calls anymore)
  • updated action for daoGlobalDetails && daoVaultWeight && getDaoDetails to suit SpartanSwap Utils contract
  • fixed the current price tick in the swap component's price chart
  • removed the intrum pool.listedPools object/actions
  • removed/updated all deps of pool.listedPools
  • daisy-chained most pool redux actions to reduce the DataManager's responsibility
  • went thru every dep of any synth vars that are no longer in the poolDetails object and removed/updated them (see mainly: synth item and synth table item and synth mint view)
  • added a getSymbolUrl helper to check for a const URL for a symbol before attempting to fall back to the github repo list
  • massive front-end RPC call reduction (no more massive batched Promise.all awaits for pools/tokens, the utils contract handles this with a multi-call-esque approach)
  • removed the reserve.globalDetails action/object/etc completely - updated/remove all deps of reserve.globalDetails to their new sparta.globalDetails home
  • we now get reserve.polDetails every 20 seconds with the base level calls after we check RPCs (this will make the 'supply' section load way faster)
  • updated getReservePOLDetails to use the ssutils getReserveHoldings() function saving a bunch of RPC calls + also removing its dependency on curatedPools && poolDetails meaning we can load it almost instantly on DApp mount now
  • moved bondDetails && daoDetails && synthDetails to the global loop cycle, no longer conditionally loaded based on the view, will be especially noticeable when opening the wallet modal now that everything will load faster
  • commented out or removed heaps of conditionals/useeffect RPC calls from the views and made them reactive calls at the action level
  • updated all the synth actions based on ssutils and some overdue larger changes throughout the store and overall codebase
  • added a synthTokensMN && synthTokensTN const array instead of looping the vaultAssets (might be a problem in the future but highly likely it wont and we can reactively make it dynamic again when the time comes)

deleted the whole utils store, we didnt need it before and definitely dont need it now

  • added SpartanSwapUtils contract to contracts page
  • fix synth input selection list to account for the removal of dummy-synths
  • add a dummy poolDetails object for spartav2
  • fix liqCap check in the zap LPs view
  • fix the loading bug with pool/token/synth/dao/bond items when no wallet was connected

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

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

  • Added animations to section icons
  • combined ‘Token’ and ‘Tokenomics’ on mobile
  • improved token section styling, moved token section text data to contentful
  • improved token section animations
  • fixed styling of token section on mobile
  • Adjusted animation on token section (mobile)
  • fixed issue with social icons overlapping trading buttons
  • fixed trade SPARTA button zindex
  • improved token section styling (mostly mobile)
  • adjusted icons
  • changed font in token section

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

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

updated circulating api logic to use a single RPC call to get the nuanced circulating supply logic with these items removed from the raw total supply:

  • burned supply
  • supply not yet circulating (held by reserve as sparta)
  • supply locked in diversified permanent liquidity (SPARTA underlying LP tokens held by reserve) imported the ssutils address and abi test this then move onto the other api endpoints
  • added prod nodereal RPC
  • converted the supply endpoint to use spartanswap utils contract
  • this conversion doesnt provide any extra efficiency (still 3 rpc calls, same as before) but no matter, this endpoint is not a common one
  • convert the total supply endpoint to use spartanswap’s utils contract
  • saving 1 RPC call per endpoint ping
  • converted the tvlSPARTA endpoint to use a single RPC call instead of a string + batch of calls
  • saved poolCount * RPC calls per endpoint ping
  • converted the tvlUSD endpoint to use the SpartanSwap utils contract
  • saved poolCount + 1 RPC calls per endpoint ping
  • fixed circulating -> totalSupply in docs

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

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

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

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

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

Frontend: https://docs.spartanprotocol.org/

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

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

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

  • changed to solidity 0.8.16 & updated some cases throughout
  • added permissions to the setter functions
  • fixed the getTVLUnbounded getPoolAssets instead of getTokenAssets
  • The Utils contract is now completed and plugged into the community DApp + API and being used in prod

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

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

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

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

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

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

Spartan Toolkit is an ecosystem project spawned from the Spartan Protocol community aiming to improve tooling for projects and users within the BNBChain ecosystem including Beacon, Smart & BAS chains.

GitHub Repo: https://github.com/Spartan-Toolkit/beptools

Legacy BepTools Repo: https://gitlab.com/canyacoin/binancechain/beptools (will request a PR and/or mirror to GitHub)

Temp Frontend: https://beptools.netlify.app/

SpartanToolkit contributors have forked and updated/fixed wallet connections etc on the BepTools DApp to give BinanceChain / BeaconChain / BEP2 users a way to freeze/unfreeze & batch send BEP2 tokens on BNB Beacon Chain

GitHub Repo: https://github.com/Spartan-Toolkit/web3-bnb

A React library with the intention of providing builders with a plug-and-play solution for any web3 wallet compatible with BNB ecosystem chains (Beacon, Smart, BAS etc)

GitHub Repo: https://github.com/Spartan-Toolkit/beacon-chain-tools-dapp

A tooling user interface for users + projects on BNB Beacon Chain. Batch-send, freeze/unfreeze, deploy BEP2 token etc without touching the command line!

GitHub Repo: https://github.com/Spartan-Toolkit/beacon-chain-tools-dapp

Tooling and informational user interface for users + projects on BNB Smart Chain‌

Spartan Protocol and its extended ecosystem is a 100% open-source community movement. Being an open org, everything is built, run and maintained by the community. If you would like to contribute or learn more, reach out in the community channels!‌

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store