Many decentralized apps are currently using centralized systems to pair their users. Even decentralized exchanges are almost all centrally hosted and vulnerable to central point of failure. In addition, being a matching agent, like exchanges, is limited to a very small subset of people.
What it does
Eros is decentralized discovery protocol on Ethereum allowing users to be paired via any third party. Users broadcast via whisper intents of being connected with other users. These users could be buyers looking for sellers, Golem requestors looking for Providers or Storj users looking to find Farmers (hosts) that will host their data. Users submit offers or requests and promise a bounty for who ever finds them a peer. Matchers, agents that listen to all these intents to connect, can then find provenly valid matches and will be rewarded by the concerned users for their service.
How I built it
Whisper act as a platform to broadcast and receives all the orders. We used a simple bound based contracts where users deposit a bounty and a Matcher can claim the bounty only if they post on the blockchain a valid match. The users can then connect with each other, via the 0x protocol for instance.
Challenges I ran into
Making whisper work with metamask, mechanism design that allows off-chain operations to make the matching process as efficient as possible, connecting the front-end with all the various backend structures we built.
Accomplishments that I'm proud of
Functional user interface that sends message via Whisper and a script that allows anyone to match buyers and sellers with compatible requirements.
What I learned
What's next for Eros Protocol ; Decentralized Discovery Engine
Improve efficiency, better design mechanisms and more use cases than simply 0x!