BUIDL-Weekly: 09JAN23 - 15JAN23
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
Spartan Themed PoA NFT - Week 7
Remember to redeem this week's PoA NFT, provided complimentary by Thespis!
Community Mentions
Approaching 1M TVL
Thanks, nowaycs & DnJoey for sharing updates on our Protocol TVL nearing 1M and being a large chunk of our token's overall market cap 🥳
PoA Remainders
Thanks to ArtyODonnell for reminding us each week on Twitter about the PoA NFTs available in each article!
CoinMarketLeague
Remember to cast your vote for SPARTA every day, Spartans!
Weekly Community Call / Hangout
Be sure to tune into the Telegram channel every week with @ReidyPhillip to stay informed about the project and the wider ecosystem. Join in the conversation and share your ideas and questions!
The Telegram chat is held every Wednesday at around 11:00 UTC, but this may vary based on community input and availability. Please check the Telegram channel on Tuesday or Wednesday to confirm the exact time.
‌SpartAnalytics Report
Our community creates a monthly PDF report that includes an overview of Spartan Protocol data from Google Search (impressions, clicks, devices, keywords, and geographical data) and Twitter analytics.
‌Community DApp‌
‌GitHub Repo: https://github.com/spartan-protocol/SpartanProtocol-DAppV2
Front-end: https://dapp.spartanprotocol.org/
To do:
- Connect new utils contract
- Swap view | Changes to the UI
- TrustWallet Chrome Ext Wallet | Conscious Integration
‌Protocol Site
GitHub Repo: https://github.com/spartan-protocol/spartan-site
Front-end: https://spartanprotocol.org/
General changes
- fixed positions in landscape mode
- fixed background on mobile (ios)
- fiex build issue
- fixed animated bg height
- fixed issues with viewport on mobile
- fixed landing page heigh issue on ios
- merge temp
- fixed mobile menu scroll issues on safari based browsers (ios)
- fixed build issues
handle edge cases and general cleanup
- normalize the brand logo top/bottom margins
- contributors section: contained the section to a max of 100% height to prevent the unexpected scroll (ratehr than snap) on some devices
- removed build date from the footer
- added 'by the community' to the footer
- landing section: made changes to make the view fit on edge case devices like iphone4/5
- pool section: made changes to make the view fit on edge case devices like iphone4/5
- stake section: made changes to make the view fit on edge case devices like iphone4/5
- swap section: made changes to make the view fit on edge case devices like iphone4/5
- token section: made changes to make the view fit on edge case devices like iphone4/5
- landing section: made changes to make the view fit on super widescreen
- video section: adjusted to fit edge case devices
To do:
- Translate landing page
- Get the copy content to final draft stage
- Cleanup unused fonts
- Account for screen-size edge-cases
‌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
Pool Pairing Changes
- updated pool contract naming
- made pool asset pairings non-opinionated (can setup a pool with any two assets without SPARTA enforced)
- added PoolFactory mappings to handle state of pool addresses and tokens mapped to pools (and their status/validity)
- added a
createPool
placeholder function - added a helper function to get pool pair from mappings (ordered)
Pool + Factory Changes
- Simplified pool factory mappings between asset pairs by assigning mappings in both directions on pool creation (instead of a costly function to order + retrieve the specific single mapping)
- Extended the
createPool
placeholder function with some logic to handle the checks, mappings updates and deploying of the pool contract
To do:
- Create an optional V3 token contract
- Create a controller contract
- Create a BEP20 pool/LP token contract design
‌Protocol Resources
GitHub Repo: https://github.com/spartan-protocol/resources
‌Protocol Docs
‌GitHub Repo: https://github.com/spartan-protocol/spartan-docs
Frontend: https://docs.spartanprotocol.org/
To do:
- Add/ change integration information to include simple quote in SS-Utils
- Future | Consider migration to Docusaurus
- Add whitelisting resources guide
- Intro Section | Convert dot points into an 'open org' section
- Contribute Section
‌Protocol Contracts V1 - V2
GitHub Repo: https://github.com/spartan-protocol/spartanswap-contracts ‌
‌Ecosystem Project: SpartanSwap‌
SpartanSwap is a separate project currently in development with the goal of creating a user-friendly interface for interacting with Spartan Protocol pools. Initially, the focus will be on providing swap functionality, with the long-term aim of becoming a swap aggregator for BNB SmartChain and potentially other chains in the future
SpartanSwap Contracts
GitHub Repo: https://github.com/Spartan-Swap/SpartanSwapContracts
add function to retrieve a simple swap quote for SPv2
- added core math for doing an SPv2 swap (internal function)
- added an external function to retrieve a quote swapping thru the SPv2 pools. this does all the heavy lifting so the caller needs only know the inputAmount, inputTokenAddr and outputTokenAddr
- returns a uint256 outputAmount (we could do the fee also but probably no important usecase for that, can update and redeploy re-actively if it becomes important)
- added a test unit to ensure the quoted amount matches the real swap amount
- extended said test unit to also make sure it does not revert if invalid tokens are chosen and instead return
0
(this is generic and un-opinionated, friendlier for front-end integrations to not have to handle errors, they only need to know its a bad route with a bad rate in the event of an invalid swap)
To Do:
- Add information about utils contract to github readme
- Create/deploy a generic multicall contract
- Create SwapAggregator router
SpartanSwap DApp
GitHub Repo: https://github.com/Spartan-Swap/SpartanSwapDApp
switch to nextjs Image & UI changes
- switched all use of images to the nextjs <Image>
- set nextjs images to unoptimized for CSR
- removed the logo Col from the provider list
- set logo as a gradient background of each provider in the list instead
- also applied the logo as a gradient bg of the swap details panel
- refactored the asset select button into its own component
- some other minor changes
add in rpc handling and begin extending swap providers
- removed some unnecessary imports
- added some simple RPC handling with priorities off a list of public RPCs
- added a placeholder for SPv2 provider quote
- added some consts
add SPv2 provider quotes
- added default chainId to the provider (BSC)
- pull in the SSUtils contract/abi and add a call to get a swap quote at the same time the 1inch quote runs
- front-end now reflects the actual SPv2 rate when estimating outputs for the user
To Do:
- Stage02: Add initial support for 1inch API only
- Stage02: Do some web3 swap testing
- Create Basic Swap Interface DApp
- Create IL Simulator
SpartanSwap Resources
GitHub Repo: https://github.com/Spartan-Swap/SpartanSwapResources ‌
‌Ecosystem Project: SpartanArena‌
SpartanArena is a separate project that focuses on developing subprojects related to gaming. Some ideas that are being considered for the future include an NFT looter game, a 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
‌Ecosystem Project: SpartanToolkit
Spartan Toolkit is an ecosystem project initiated by the Spartan Protocol community with the goal of improving tools for projects and users within the BNBChain ecosystem, including Beacon, Smart, and BAS chains
BepTools Fork
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/
The contributors of Spartan Toolkit have forked and updated/fixed the wallet connections in the BepTools DApp to enable BinanceChain/BeaconChain/BEP2 users to freeze/unfreeze and batch send BEP2 tokens on the BNB Beacon Chain
Web3BNB Library
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)
BNB Beacon Chain Toolkit DApp
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!
BNB Smart Chain Toolkit DApp
GitHub Repo: https://github.com/Spartan-Toolkit/beacon-chain-tools-dapp
Tooling and informational user interface for users + projects on BNB Smart Chain‌
Protocol Information
- Website: https://SpartanProtocol.org/
- DApp: https://DApp.SpartanProtocol.org/
- Documentation: https://Docs.SpartanProtocol.org/
- GitHub: https://GitHub.com/spartan-protocol
Community Links
- Twitter: https://twitter.com/spartanprotocol
- Telegram Community: https://t.me/spartanprotocolorg
- Telegram Announcements: https://t.me/spartanprotocolann
Project Community
Spartan Protocol and its related ecosystem is a 100% open-source community initiative. As an open organization, the community is responsible for building, running, and maintaining everything. If you are interested in contributing or learning more, please reach out in the community channels!