PART 1: Build a Decentralized Exchange on Ethereum Blockchain - Fullstack Dapp

ยท

3 min read

Every day a new token is released on the mainnet, listed, or even worse deleted from thin air ( sh*t coins ). Not sure what the previous sentence has to do with this article though, but anyway, who's ready to build something cool to show recruiters, friends, Twitter, and everyone chilling in the web3 space? You? Me?? Nah, it has to be you.

Basically, this would be a long series where we would be building a full-stack Dapp which would allow our friends, sponsors, and side-chicks to swap their existing assets for another asset, maybe even cooler with the current market exchange rate. Sounds cool? To make things more clear, we are going to be building a decentralized exchange like Uniswap, DyDx, Pancake swap, over multiple series.

Nature of the Project

As said before, we are building some cool Decentralized Exchange but this time, not only are we gonna let people swap the hell out of their assets, they would also earn some cool NFTs and also get a little share of an ERC-20 Token we would also create. This app would feature a good number of possible assets to swap for a broader audience and would only include assets on the Ethereum blockchain. A typical scenario would be when your lover wants to swap their weak SHIBA token for the almighty ETH, or maybe save them a heart attack and help them swap some DAI token for LINK token. I think it would make sense to not limit the assets and give room for more possible swaps by allowing users to paste an address. Not sure yet about this feature, if we should do this please leave some comments below.

Lifecycle of the App

  • User connects their wallet to the App
  • Selects assets to swap.
  • Add the incoming assets to their wallets Manager.
  • After a successful swap, we mint some cool NFTs and Tokens to the connected wallet address.

Things we would cover

  • Router contracts
  • MetaMask APIs
  • Tailwind CSS
  • Hardhat Framework
  • Unit testing our contracts
  • React.js (Next.js)
  • Smart contract Deployment
  • Beginner & Advanced Solidity Concepts

You would need

  • Enough ETH on the rinkeby testnet, get some Here, get like 100ETH and send some to my address (0x687d0848507F90dCE542d13D5A824575Df5aBBe0) ๐Ÿ˜Ž.
  • A laptop that does not overheat due to peer pressure.
  • Your brain!
  • Your left brain!
  • Your right brain!
  • The middle brain!
  • last but not least, your back brain.

A few things I need from you

  • Suggest in the comment section a list of tokens/assets you would want us to feature.
  • Do we use a boilerplate like thisor just code from scratch.
  • What more can we add to this project?
  • Would it interest you if we do a cross-chain exchange? ( I think it's called a bridge).
  • Suggest a cool name for our Token.
  • Do we deploy this to another chain and ditch Ethereum? Maybe take it to Binance Smart Chain?
  • I think it would make sense if you subscribed to my blog to get notified on a new series.