Inspiration

We were mostly by our curiosity towards the cryptocurrency space. Crypto as a currency has been popular, but not used much in actual payments. We decided to come up with a solution to make crypto more financially accessible, all the way from the wallet creation process to setting up a payment wall for users.

What it does

Monkey Wallet allows you to create ethereum wallets for business, and does not store the private keys of these wallets for maximum security. The wallets are then linked to the Monkey Wallet account that created them, allowing for easy access anytime, anywhere. A dashboard is provided to the user for tracking and analysis of the volume, income, etc of the payments directed towards their wallet.

How we built it

We built the Monkey Wallet website using HTML, CSS, JS, web3.js, and it is hosted on Google Firebase hosting. The page sends HTTP requests to our backend Google Firebase cloud functions to retrieve/send data from our Firestore database, which handles account information such as the public ethereum blockchain key of the user. Auth0 is used for our authentification system. Passwords and private keys are not stored in our database. We use Metamask as a gateway to our ethereum provider, a RPC server blockchain on Ganache. web3.js is used to fetch wallet balances, transaction histories of wallets, and handles wallet creation.

Challenges we ran into

Debugging cloud functions and UI/UX were huge challenges. We wanted the UX to be very easy in regards to setting up an account and being able to view all the activity around it. Neither of us are very versed in UI/UX, so we opted to use a code exporter (TeleportHQ) instead to design and create our site. Debugging cloud functions was tedious and took excessive amounts of time because of how long it took to deploy them. In addition, cloud functions did not work with our method of retrieving balances because it did not connect to our ethereum provider, so we had to resort to quick thinking and use Metamask(crypto wallet extension) and a web3.js CDN to connect to our provider instead.

Accomplishments that we're proud of

We are proud of finishing most of the application and being able to deliver on our goal at the beginning. Monkey Wallet simplifies the crypto process and is a great example of how software can make something that can be as confusing as crypto, more accessible to a general public.

What we learned

We learned a lot about how cryptocurrency works behind the scenes and its decentralized nature.

What's next for Monkey Wallet

We wish to expand on this project because over the course of the hackathon we have built a lot up that is still not finished. The payment gate process is still not complete, and finishing it would really achieve what we set out to do with Monkey Wallet.

Note

To demo Monkey Wallet, you will need to have the Metamask extension connected to our test network on Ganache at "HTTP://169.233.141.58:7545" (current node as of 12:55pm)

Built With

Share this project:

Updates