SpartanProtocol
Published in

SpartanProtocol

TLDR: DAO proposals go live tomorrow, Tuesday the 19th. The contributors will begin the process of testing and enabling around 2.00 AM (GMT)

Community is a core mantra of Spartan Protocol & its shield wall, in line with this ethos and now that the following has been achieved, we can open up the DAO and begin making protocol-changing proposals in a more distributed manner!

  • Mainnet V2 protocol up and running for 2 weeks
  • TVL building steadily with confidence
  • The DaoVault weight is looking strong & distributing further each day

What is a DAO?

Decentralised Autonomous Organisation

DAOs place the community participants in control of the platform transparently and programmatically. The power of contracts enforced by mathematics means that a large number of automated actions within a contract can be set up and voted on, the results of which will be automatically actioned.

This would mean when applied to the above example; the community would be able to propose and vote on which tokens they want to be listed for ‘Bond’ for instance. On a successful vote, these tokens would be automatically listed. Resistant to external entities, governments and bad actors getting in the way of that decision.

The community is already familiar with the Spartan Protocol ethos being; ‘birthed by the community, for the community’ with the initial community building the platform the way they wanted to see it within the Binance Smart Chain ecosystem. Chosen for its power, speed and low fees.

Having Spartan Protocol run by a DAO was a central pillar of its development.

If you want to read a little more into DAO’s check out the Binance Academy article below.

Decentralized Autonomous Organization (DAO) | Binance Academy

Decentralized Autonomous Organization | Definition: A system of hard-coded rules that define which actions a decentralized organization will take.

Binance AcademyBinance Academy

What is best for SPARTA!?

A focus on proposals that will benefit the platform in the long run, means focusing on things that help it grow, develop and improve reach before focusing on individual benefit. Community value will drive results in individual benefit, it most likely won’t work the other way around.

To learn more about the Spartan Protocol take on a Decentralised Autonomous Organisation head over to the SpartanProtocol.org page

Spartan Protocol | DAO Governance on BSC

Spartan Protocol’s incentive token is programmable with multiple incentive streams that the SPARTA community collectively manage through decentralised proposals and voting

Spartan ProtocolSpartan Protocol Community

Or check out this article for our OG DAO implementation in V1

Spartan Protocol DAO — (Decentralised Autonomous Organisation)

Bond+Mint DAO — Now Live

Spartan Protocol BlogSpartan Protocol

YES, proposals do include the old fan favourite — ‘Bond’ — its time……

Bond+Mint on Spartan Protocol

Bootstrapping Liquidity + Initial SPARTA Token Distribution

SpartanProtocolSpartanProtocol

Wednesday feeBurn Update

Spartan Socials — Twitter

Tweet of the Week:

Community Tweet of the Week:

SpartanSocials — Medium

SpartanSocials — Telegram

Contributor’s Focus

COMPLETE ✅ — Enable the Vault incentives

TOMORROW — Enable the DAO proposals

DAO to manage the Bond program (list assets & release allocations)

IN PROGRESS — Work with aggregators to connect the SPARTA pools

IN PROGRESS — Set up a reliable index of history scoped to contracts (for ‘positions’ page)

Build a ‘positions’ page for V2

Post-C4-contest article on the top issues

(Side-Task) — Work with CMC/CoinGecko to feed in the SPARTA pool info

March onwards with our original goals of building the decentralised, yield-generating synthetics protocol on Binance Smart Chain

GitHub Activity — Spartan Contracts v2

Lending work has restarted with some fresh new ideas that have come about since the V2 refresh began. The current implementation leans towards utilizing our pools & liquidity providers instead of creating a more traditional ‘separate pool’ market. This brings some POL opportunities & significant potential revenue opportunities for our existing pools/liquidity providers which will also drive more TVL & help harden the goal to provide self-sustaining incentivised liquidity.

As a general explainer, what we might see is something like this:

  • Liquidity providers supply liquidity to the pools & receive LP tokens (just like normal)
  • There is an option for another form of utility for your LP tokens with a LendVault
  • The liquidity provider has a choice between staking them in the DaoVault or LendVault. Each with its own dynamic yield & utility advantages
  • The LP tokens staked in the LendVault will be added to a lending pool ready to be borrowed out by users
  • They can borrow a safe amount of a base asset (BUSD, BNB etc) and provide SPARTA as collateral
  • The LP tokens held in the LendVault are redeemed for the underlying assets, swapped if required (to the chosen asset) and sent to the borrower
  • When the borrower is ready to close their CDP and get their collateral back, they bring the chosen assets back and send in the full amount & receive their collateral minus the interest
  • There will obviously be liquidation opportunities

This implementation provides a lot of potential opportunities for the liquidity providers & therefore the whole ecosystem. It does however make it hard to provide any form of ‘single staking’ via the Lending contract like some of the previous implementations.

Whilst single-staking would be nice & will continue to be attempted to plug in somewhere in a sustainable protocol-benefitting way, it will not be the #1 priority when designing this lending system.

If single-staking works somewhere in the system, it will be plugged in. If it doesn’t or the Lending model requires major nerfing to make it work, it will be pushed to be attempted in another feature instead.

Branch: LendingV1

contracts/Lend.sol

  1. Setup structure and list of likely functions based on current implementation being worked on

contracts/Reserve.sol

contracts/lendRouter.sol

  1. Setup structure and list of likely functions based on current implementation being worked on

contracts/lendVault.sol

  1. Setup structure and list of likely functions based on current implementation being worked on
  2. Padded out lendLP() & removeLP() with some logic, similar to the DaoVault/mappings

GitHub Activity — Spartan DApp v2

Global Changes

  1. Changed the sitemap accordingly
  2. Updated some text/icon colours for lightMode
  3. Added some more injected translation IDs
  4. Forked the Assets repo to manually add token icons
  5. Changed number inputs to have a min of 0

src/components/AssetSelect/AssetSelect.js

  1. Conditionally show TrustWallet icon if TrustWallet ‘wallet type’ is detected

src/components/Footer/Footer.js

src/components/Icons/icons.js

  1. Updated ArrowDownUp & ArrowLeftRight icons

src/components/Supply/Supply.js

src/components/Tooltip/tooltip.js

src/components/WalletSelect/*.js

  1. Conditionally show TrustWallet icon if TrustWallet ‘wallet type’ is detected

src/components/WalletSelect/Txns.js

  1. Essentially the same as ‘RecentTxns’ component from the footer but with the formatting updated and is now located in the wallet modal
  2. Updated the pagination behaviour
  3. Changed the ‘ClearTxns’ button to a trash icon and added an alert/confirm when clearing

src/components/WalletSelect/WalletSelect.js

  1. Added a ‘txns’ tab with a ‘history’ style icon for the transactions history content
  2. Added a ‘clear wallet’ button if no wallet is connected to clear the local storage item in case a user has corrupted local storage selection for their lastWallet

src/components/WalletSelect/txnTypes.js

src/routes.js

  1. Changed Vault to Vaults
  2. Moved Bond into the Vaults
  3. Changed Overview to Pools

src/store/pool/actions.js

src/utils/math/nonContract.js

src/utils/web3.js

  1. Pointed getTwTokenLogo() to our forked version of the repo instead of TrustWallet's API & repo

src/views/pages/Pools/PoolItem.js

  1. Added tooltip placeholder explaining the feature (could do with some rewriting/simplifying)

src/views/pages/Swap/Swap.js

  1. Added in spot & swap rate logic
  2. Added in slip calc logic
  3. Added in ‘revenue’ logic inc dividends

src/views/pages/Vaults/BondVault.js

src/views/pages/Vaults/DaoVault.js

src/views/pages/Vaults/Overview.js

GitHub Activity — Spartan Subgraph

subgraph.yaml

  1. Updated the poolFactory contract address
  2. Updated the startBlock to the deployment blockstamp
  3. Updated the eventHandlers to match the new events

src/const.ts

  1. Updated array of stablecoins

src/mapping.ts

src/mappingPool.ts

  1. Fixed the wrong logic for member.liqNetUSD
  2. Added sync() at the end of the swap event to ensure pool balances are synced for internal subgraph pricing (dividends aren't accounted for via any events so a sync needs to be performed instead)

src/utils.ts

  1. Changed sync() to only check for baseAmount to account for dividends

Project Information

Official Links

Community Contribution

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.‌

Binance Smart Chain testnet Faucet

Engage with the community and contributors

--

--

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