Utopia Labs Take Home Project

Welcome friend thank you so much for taking the time to complete the Utopia Labs engineering take home assignment. This fun project will serve as an extra data point as we evaluate you for an engineering role.

When you fork this repository, you should make your fork private and share it with jasontheutopian, alextheutopian, and prycetheutopian on Github with an admin role. By forking this repository, you agree to keep the MIT License intact and assign the MIT License to your fork as well.

The challenge is to build out a simple ui interface to send an air drop of tokens from a gnosis safe to multiple different addresses.

Project Description:

In this project you will create a simple 1 page dapp that can show ethereum balances and send transactions.

Your task is to use React/TypeScript, Next.js, the useDapp package, and styled-components to create an dapp that can :

  1. Connect to a Ethereum Metamask wallet.

  2. Display your Ethereum balance.

  3. Send a transaction of "x" ETH where x is a user-defined input.

It is up to your discretion for how to style the app. We just ask that you use styled-components and think of building re-usable, well-structured components. Minimal styling is okay, but if you are a CSS wizard, this is your opportunity to showcase it!

Optional Task

If you have extra time available, feel free to show off your strengths! You can style the site, cache the most recent input, or implement any of the following features:

  • Show the last N transactions of that address
  • Show Ethereum values in USD as well

Using the starter repo;

Starting the repo is a easy as cloning the repository and running yarn yarn dev there are some premade components and imports for your convenience but using the imports will probably require reading the usedapp documention

Note

You should be working on the Rinkeby Test Network. This is the same as interacting with Ethereum, however, the balances will all be test amounts. To get a test amount of Ethereum, you can visit https://faucet.rinkeby.io/. If you have problems with getting fake Rinkeby, email pryce@utopialabs.com with your Rinkeby wallet address and he will send you some Rinkeby ETH.

Submission

You can submit your finished repo to pryce@utopialabs.com.