Technical Architecture

These are the major components we use in our technical architecture:

  • Smart Contracts:

    • Our solidity smart contracts are owned by a multi-sig wallet, use OpenZeppelin's upgradeable design pattern, and use of OpenZeppelin's Defender to perform the contract administration

    • The on-chain pricing uses Chainlink as our oracle

    • We use both off-line and online automation to automate many tasks, including auto-claiming all contracts at expiry, determining the time of channel breakout for Channel / Epoch, creating/starting Epochs, etc.

    • This will be open sourced at some point after our audits are complete

  • Front End UI:

    • The front end is hosted at AWS and is written in ReactJS

    • It is globally cached at edge servers and made highly available using AWS CloudFront, which also protects it against various types of web DOS attacks

    • We have various AWS uptime monitors running against the front end

    • We use geo-fencing using AWS CloudFront's functionality to restrict production access

    • We check and restrict wallets on the OFAC restricted account lists

    • We use Alchemy RPCs to access the blockchain

    • Charts and financial information are provided by TradingView, a popular trading and charting platform. Check out the gold chart or explore bitcoin chart directly from their website.

    • This will not be open sourced

  • Front end off-chain Price Indication Server:

    • In order to minimize direct load to get Chainlink prices for the front end, we implemented an off-chain price server on AWS that is accessible via REST web service calls with highly scalable AWS lambda functions as part of the AWS's API Gateway

    • The official pricing is done on-chain via Chainlink's oracles

    • This is not open sourced

  • GraphQL:

    • We use the Graph as our database of on-chain events

    • Our schema and mapping code is not open sourced

  • Partner Integration Services:

    • For our integration partners only, we offer REST API calls hosted on AWS and secured by individual API keys to get supported assets and offers to display

    • Making purchases and claims must be done directly to the smart contract by the integration partner in order to safeguard their private keys.

    • We provide example code to help with this process

    • Please contact us at partners@bracket.fi to learn more

Last updated