Edit (6th Nov 2020): It seems like the messenger app is also no longer working since the "Connect Metamask" button broke from an upgrade on metamask's end... 😩 I will get around to fixing it one of these days!
What is this project about? #
I built a peer-to-peer messenging web app that focuses on privacy - more specifically, using your ethereum address as a unique identifier to your user and that none of the conversations are saved anywhere.
Why did I do this? #
I recently completed a frontend course on udemy (no, I'm not paid to promote this!) and I was curious to see how much I managed to absorb from the course.
I also wanted to build something that is related to privacy because of an increasing concern with digital privacy. It is quite scary how much our digital footprints reveal about us but yet, we put the safety and security of our data on the back burner because of the many benefits that we derive from using the internet.
How did I do it? #
This proof of concept web app was hacked together over a few weeks using:
- metamask for connecting the app to your ethereum address
- web3.js for accessing your ethereum address programmatically
- peerjs for handling the peer-to-peer connection
- vue.js is the frontend framework used
- veutify for its prebuilt UI components
You can try out the demo here but I highly recommend running it locally instead i.e. clone the repo, spin up a local instance and voilà! The source code for this proof of concept can be found on github.