Nov 11, 2022
No image
Swarm Bzzaar

Swarm Bzzaar

2-3 months
United States
view project
Service categories
Service Lines
Software Development
IT Services
Domain focus


Swarm is a decentralised storage protocol that is built on the Ethereum blockchain. In short, the protocol is about bringing what we know as Web 2 storage to Web 3 with a protocol designed for transparency, anti-censorship and data freedom. Towards the end of last year, our team at Linum Labs was tasked to design a Bonding Curve (price oracle/ price discovery mechanism) for the successful sale for the utility token that the protocol runs on, BZZ tokens. With this, a simple user interface was needed in order for the user to interact with the smart contract and make seemingly simple, buy/sell orders for the token priced on the bonding curve.


With that community in mind, we knew we had the following challenge: This interface had to be intuitively understandable (for the target audience of Web 3 intermediate to advanced power users) and had to perform the very simple functions of Buy and Sell (or Send and Receive collateral to the bonding curve) for the BZZ token. It is expected that with this simple interface, the user would be able to Mint and Burn ERC20 tokens for BZZ for a number of different goals, mainly for acquiring the BZZ tokens to be used as a utility on the Swarm protocol. Therefore both the design of the underlying Smart Contracts and the basic functionality of the UI had to work in complete harmony for the best UX.


The "Bzzaar" is a decentralised two-way token vending machine where a user can obtain BZZ tokens for use on the Swarm network and return BZZ at a value in DAI or ETH. This value/price is dictated by supply and demand and the bonding curve formula. The first use case for this utility token will be to purchase what is known as "postage stamps" in order to host content on the Swarm network, or, to speed up interactions on Swarm like uploads and downloads. Therefore, to keep this interface as utilitarian as possible, the 1st drafts were crafted on 2 different versions offered in other similar interfaces; 1, from Shapeshift, and 2, from Uniswap. Ultimately the wireframes based on the Shape Shift version were chosen to go ahead with.