SpartanDev: 05/04/21–11/04/21

SpartanProtocol
6 min readApr 12, 2021

DevUpdate: DappV2 | SpartanContractsV2

Summary

Well, it’s been an interesting week in the Binance Ecosystem. BNB pumping convincingly towards cementing itself as a serious smart contract pressure release valve for Ethereum whose gas prices continue to make the network unusable for most small to medium-sized ERC20 token-holders. Binance Smart Chain provides a viable ecosystem for users to take advantage of and remove some pressure from Ethereum whist 2.0 is being worked out. The success of the future crypto world will rely on multiple chains working together cleanly and harmoniously; I think it’s clear now BSC will be apart of that world!

Sparta-land has been full of committed community contributors building out the DAppV2 and heavy testing within testnet this week. DAppV2 appears to have all phase1 features fully functional, just a matter of cleaning things up UI/UX-wise to have DAppV2 ready whilst testing continues towards being ready for mainnet and migration.

Spartan Socials — Twitter

Top Impressions:

Top Engagement:

Top Community Mention:

SpartanSocials — Medium

SpartanSocials — Telegram

GitHub Activity — SpartanContractsV2

  • Add ‘purge’ function triggered if baseCollateral is lower than baseDebt
  • Test SP-s & SP-p naming convention
  • Added getSynthsArray helper for UI
  • Refactor contracts to reduce their size
  • Add a forced harvest() on weight change to prevent any possible weight exploits
  • Change DAO’s withdraw() function back to 100% (unlock from DAO) instead of user-input amount
  • Change Router & Pool custom events back to ‘Transfer’
  • Fix forced-harvest bug (as above, after testing)
  • Added more automated testing around recent DAO changes
  • Changed ‘purge’ to ‘liquidate’ (lend contract)
  • Extended the liquidate function & added time mapping (lend contract)
  • checkLiquidate() & checkInterest()
  • Extend lending automated testing
  • Extended lending testing
  • Fix mintSynth bug
  • Finish fixing the mintSynth bug
  • Change totalCollateral -> collateralBalance
  • Extend automated testing to cover the previous bug’s scenario
  • Test -SST & -SPT naming convention
  • Refactor ROUTER to reduce contract size

GitHub Activity — SpartanDAppV2

  • Add ‘copy’ icon, improve walletSelect
  • Add pools tiles to overview
  • Add assets & balances to walletSelect
  • Update deployed router consts
  • Extended Dao/Lock+Earn functionality (despoit, harvest & withdraw via UI)
  • Changed UI to SP-p & SP-s naming convention
  • Added ‘harvestAmount’ to the dataManager with 7.5s refresh
  • Improve footer
  • Improve header
  • AssetSelect to the next phase
  • Imporved the header & sidebar on mobile
  • Improve walletSelect & include balances
  • Update to newly deployed contracts (ABIs + addresses) * 2
  • Improve walletSelect + include tokenIcons w/ URL validity checking
  • Improve dataManager
  • Use finalLpArray in swap instead of finalArray (for synths & zap)
  • Update to newly deployed contracts (ABIs + addresses) * 2
  • Update dao withdraw() function to not use an ‘amount’ anymore (only 100% withdraw of each asset from DAO)
  • Fix share button
  • More SPT2 -> SP-p references
  • Change the DApp to auto-connect to your last known connected wallet even on browser close etc (uses localStorage)
  • Update token fallback image
  • Get AssetSelect to next phase (tokenIcon, contractAddr copy / add to metamask)
  • Improve AssetSelect
  • Adjust ‘liquidity’ & ‘swap’ to suit new assetSelect implementation
  • Drasticly improved the URL validation method by simply doing 1 validation call when the array is built rather than a validation call for every token every time it is displayed in the dapp
  • Implemented clearSearch function to improve the search functionality within AssetSelect
  • Added tokenIcon and support for other asset types (synths / LP tokens) to AssetSelect
  • Added functionality to add asset to metaMask from within AssetSelect
  • Added synth placeholders to finalArray
  • Added synth variable grabs to add during finalLpArray
  • Fixed getSynthContract()
  • Fixed filter handling in AssetSelect
  • Improved AssetSelect styling
  • Synths mint/burn functional in SimpleSwap
  • Point to new synthFactory
  • Disable synth’s ‘totalCollateral’ grab in finalLpArray (mappings undergoing changes in contracts)
  • Close sidebar when use clicks outside the sidebar (better UX)
  • Added ‘add to metamask’ to WalletSelect for all asset types
  • Improved WalletSelect
  • Added synths support in WalletSelect
  • Improve swap styling
  • Fix DAO harvestAmount and memberWeight text strings
  • Changed all references to asset types to new naming convention; -SPP & -SPS
  • Improve pool layout on mobile
  • Added wallet-status indicator on wallet-icon
  • Fixed collapse issue on pools overview page
  • Wallet indicator (loading status0) changed to trigger when the finalLpArray is loading instead of wallet ‘connecting’ status
  • Improved header for mobile
  • Changed priceBox in header to popOver instead of dropdown

Contributor’s Focus

SpartanContracts

  • Lend V1
  • LendRouter V1

Spartan DAppV1

  • Finalise migration-UI

Spartan DAppV2

  • Finish building out phase 1 functionality
  • Test start-to-finish migration from testnet V1 to testnet V2 (within UI)

SpartanSite

  • DAO page
  • Lending page
  • FAQ page

Other Focuses

  • Video & text guides

Community Contribution

Spartan Protocol is at its core, a community-driven and led project. In this vein, the more contributors the better. There is a great opportunity for community members to contribute by making LP reward analysis tools, etc.

Recently, community members have been graciously funnelling in to contribute to explainer articles, ideas and even $SPARTA donations to support the growth of the platform.

Engage with the community and contributors

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

GitHub list of bounties available

Reach out on telegram to get involved: https://t.me/SpartanProtocolBounties

--

--

SpartanProtocol

Incentivized liquidity and synthetic asset generation for Binance Smart Chain. https://SpartanProtocol.org