Inspiration

Today, everyone have their own mobile phone with them 24/7, and the most essential feature is obviously "Communication". And in case of chat, Kakaotalk the most loved messenger service in Korea, stores every chat data at its own database in plain text which is huge threat for privacy. These days, we are just relying on law enforcements and contracts that are made by trusted parties for our own privacy.

Of course, there are services that support end-to-end encryption like Telegram or Zoom. But, limitations are anyway present, which are they also stores encrypted data in their database. Furthermore, their protocols are source codes are private. Which means even they can't look the data into it, however only them holds it data. Which seem to have a data monopoly today.

Then,why just use blockchain for it? Then every can make a service with it, and create an ecosystem with it just like decentralized social network Mastodon that implemented ActivityPub Protocol. Even the strengthness of the blockchain are quite clear, challenges for using blockchain as chat service was the speed.

What it does

Our service Eywa is utilizing interchain blockchain to maximize the strength of the blockchain which is the scalabilty, decentralization, and connectivity, and in same to minimize the message delay.

We have draw and built a new architecture design to combine conventional backend API servers and blockchain nodes. Which in name of, Eywa Relayer. Some may concern about the malicious Eywa Relayers or single-point failures on Relayers, however, Eywa relayer itself is also self-hosted and designed to be decentralized.

How we built it

We have built this service with 5 different github repos. eywa: ignite-cli code with our service app chain eywa-relayer: eywa-relayer golang server that relays between clients and propagates transactions to blockchain nodes eywaclient: generated golang-client code by ignite-cli in eywa repository eywa-infra: Terraform code that how we composed our infrastructure for our demo project.

REAMDE The most detailed step-by-step guide for our service is link above

Challenges we ran into

The most challenge is integrating Rollkit, Celestia light node, with Ignite-cli. Which we haven't done it before. And we actually spent a whole day trying to publish our service chain to Celestia devnet. However, we found out at the second day dinner that devnet was not actually fully operational at that time...

Also, as we were trying to implement one whole system design into operation, it was also challenging to make a whole in 3 days...

Accomplishments that we're proud of

We are truely proud that we can built this whole idea to real-world in 3 days. And we can actually present this project in this competition.

What we learned

It was truely a massive experience to build an DApp and, also add our own insight into it.

What's next for Eywa

Still, there are many things to do with Eywa. We have made a decentralized and fast chat service with our own relayers. But, still considerations must be made with transaction fees and incentives. Also, how to enhance UX for this app just as today's most outgoing chat services.

Built With

Share this project:

Updates