Origin DApp gets ERC 725 Identity, Transaction Steps, Escrow, and Reviews

At Origin Protocol we’re building an open-source platform to enable the creation of peer-to-peer marketplaces on the blockchain. We’re driven by a desire to reduce transaction fees, promote free and transparent commerce, and redistribute value from rent-seeking middlemen to individual buyers and sellers.

We released our initial demo DApp to the Rinkeby test network in January of this year. Since then our team of developers has worked incredibly hard to continue improving this demo and the underlying platform that powers it. Today, we have exciting new functionality and features to show off with our latest release of Origin.js and the Origin demo DApp that’s live on both the Ropsten and Rinkeby testnets.

You can try the DApp at demo.originprotocol.com.

From a technical perspective, it’s nonintuitive but amazing to realize that there isn’t a traditional backend powering our DApp. The DApp runs entirely on client-side code (HTML and JavaScript) and doesn’t rely on centralized servers or private databases controlled by Origin or anyone. Thanks to the Ethereum blockchain and IPFS we can create marketplace experiences that are truly decentralized and available everywhere. As a result, our DApp can be run from any machine or directly accessed from any gateway on the IPFS network. Try it on Infura, Siderus, Jes, or Origin’s own IPFS gateway.

Development progress

In the last few months, we’ve had over 1,700 commits to our repos and merged over 340 pull requests from over 40 open-source contributors. The platform is rapidly developing with dozens of commits being merged every week. We’ve established a regular cadence with two-week product and engineering sprints and plan to increase the frequency of our releases. As always, our work is 100% open-source, and all our collaboration is done in public on Discord and Github.

Core components

There are three core components to the platform that we are building at Origin.

First, the foundation of our platform is a series of smart contracts running on the Ethereum Blockchain. These smart contracts enable functionality that replaces the need for trusted intermediaries to manage marketplaces, and allows us to instead create marketplaces that are governed by a set of open, fair and transparent rules.

Second, our Origin.js library gives developers a way to interact with our smart contracts without having to worry about the challenges of developing software on the blockchain. There aren’t many people in the world who know how to write secure and scalable Solidity contracts, but most developers know at least some JavaScript. If you know how to write basic JavaScript you will be able to create sharing economy marketplaces that allow buyers and sellers to meet, communicate, and transact on the blockchain. Origin.js is under active and rapid development, but there are already plenty of examples of how to use the library in our documentation that you can try for yourself.

Finally, our demo DApp is the first application that is built using Origin.js. This DApp is meant to illustrate the types of marketplaces that are possible and to give both developers and end users a chance to experiment with this new type of distributed marketplace.

What’s new

We’ve crammed a lot of new features into this latest release, including support for user identity (supporting the ERC 725 identity standard), transaction steps, escrow, ratings, and reviews. There are also dozens of improvements to the user experience and overall functionality.

Example listings on Origin Protocol’s demo DApp

Identity

We have written previously about our working implementation of ERC 725 — a standard for managing identity on the blockchain proposed by ERC 20 creator Fabian Vogelsteller. The DApp now allow users to create and control their own identity contracts in a simple interface that connects your identity to your Ethereum wallet. You now have a basis for establishing your identity and reputation on the blockchain with ratings and reviews that are collected as you make purchases across any Origin-powered marketplace.

We’re excited to support this open standard which, like ERC 20, will only grow stronger as more projects and companies join us in supporting it. You can think of ERC 725-enabled identity a bit like Facebook Connect, but without the Facebook.

Verifying your identity using ERC 725 on Origin Protocol

Origin (the company, not the open-source platform) is running an ERC 725 attestation service as part of our open-source bridge server. This means we can verify pieces of your identity like your email address, phone number, and social media accounts, and then sign attestations to be published on the blockchain. It’s a bit like using a notary service where you can choose which third parties you trust to verify your identity and/or the identities of others.

If you add your name, profile picture, or bio we will publish that information to IPFS and store the resulting content hash on the Ethereum blockchain. We believe it would be irresponsible for us to encourage people to publish their phone numbers to an immutable database, so for more sensitive information like your phone number, email address, or social media usernames, we’ll only store an attestation to the existence of those accounts on the blockchain instead of the data itself. Ultimately, the best privacy conscious solution will probably involve zero-knowledge proofs and Merkle trees.

Transition progress & escrow

Another big improvement to our platform is tracking transaction progress with state transitions. Our smart contracts keep funds escrowed until the buyer confirms receipt of the goods or services. Our DApp has been updated to show both the buyer and seller where they are in the purchase flow and the next steps that need to be taken.

Origin Protocol’s demo DApp now displays your progress through each step of a transaction

Ratings and reviews

Ratings and reviews are a critical component of most sharing economy marketplaces as they enable buyers and sellers to establish their online reputations. This feedback is now included as a core part of Origin.js. On Origin, both buyers and sellers are required to leave reviews as part of the transaction flow. Buyers can be confident that reviews came from verified purchasers, and sellers can trust that they’re dealing with reputable buyers. We support 5-star ratings as well as an optional text-based reviews. Reviews are solicited for each completed transaction and can be aggregated for a specific user or product.

We often think of sharing economy marketplaces like Uber and Airbnb as peer-to-peer marketplaces, but in reality, they’re actually peer-to-giant-corporate-monopoly-to-peer marketplaces. Although our demo DApp is still a relatively simple demonstration today, it’s important to remember that when you’re using Origin, you’re connecting directly to the Ethereum blockchain and a distributed file system called IPFS. There’s no central server, and there’s no middleman sitting in between you and the other side of the transaction collecting fees.

Try it out

Our demo is live on the Rinkeby and Ropsten Ethereum test networks and is accessible at demo.originprotocol.com. If you haven’t already, you’ll need to first install the MetaMask extension for Google Chrome or install a wallet-enabled mobile browser like Cipher, Trust, or Toshi. Make sure you’re connected to either Rinkeby or Ropsten instead of the main network.

To create listings or make a purchase, you’ll also need to collect some fake test Ether from either the Rinkeby Faucet or Ropsten Faucet. If this is your first time using a decentralized DApp on a test network, please refer to our previous post for more detailed instructions on how to get started.

Installing Origin Protocol’s demo DApp on your local machine

What’s next?

We’re incredibly proud of the progress we’re making. Today, we have something you might describe as a decentralized version of Craigslist or Ebay. Our next focus is enabling the fractional usage of assets and services to replicate the functionality of applications like Airbnb and TaskRabbit. This will be a major feature and is something that is critical for enabling sharing-economy marketplaces. Our progress is only accelerating, and we are on track for a platform launch on the main Ethereum network by the of Q3 of this year.

We’re also getting an early start on internationalizing our DApp. Blockchain innovation is global, and our platform should be accessible in every region of the world. There are two billion people on this planet who are unbanked and unable to use popular apps like Uber and Airbnb. However, a growing number of people in this often neglected population have smart phones. Therefore, they will have access to digital currencies and decentralized marketplaces that are built in the next few years. In fact, Origin-enabled marketplaces may be the very first digital marketplaces that billions of people ever use to buy and sell on the Internet. We are offering multi-language support from the very beginning because these emerging economies may be the earliest adopters of our platform. We’re also very fortunate to have a global community of supporters. If you would like to volunteer to help with our ongoing translation efforts, please reach out in the #translations channel in our public Discord group.

Finally, we owe a huge thanks to all of our amazing open-source contributors who made this release possible! If you want to get involved in this project, whether it is by contributing code, reporting any bugs, helping us expand our community, or sharing any other feedback, please find us on Discord.

Learn more about Origin: