• Home
  • About
    • Alessandro Pagiaro photo

      Alessandro Pagiaro

      FullStack Software Engineer @ Domotz (Pisa, Italy).

    • Learn More
    • Email
    • Twitter
    • LinkedIn
    • Github
  • Posts
    • All Posts
    • All Tags
  • Projects

CryptoMarket, a decentralized marketplace over Ethereum

07 Mar 2018

Reading time ~1 minute

CryptoMarket is a smart contract. What does it mean? Is a marketplace that runs without any server, that cannot be censured and its security is based on cryptographic functions.

Overview

FrontEnd Preview The project is composed of two parts:

  • The smart contract, written in Solidity
  • The front-end, written in HTML5 that shows the smart contract status

The main contract Marketplace, inherit the storage function by another contract ProductBox. So, the products array and every function related to that are in the ProductBox contract, instead, every function related to the orders are in the Marketplace contract.

Authentication

Of course, as every smart contract, its data are stored over the blockchain and are public. So, everyone can store data into this contract and can get the products. Each product created in this marketplace is associated with an Ethereum address. Only that address can delete that product.

CryptoMarket

How to try it

In order to try it, you need to have something that injects Web3 into the site. The simplest way to satisfy that dependency is to use Google Chrome with MetaMask Extension

The project is deployed over the Rinkeby Test Net. So, if you use MetaMask, open it and then select Rinkeby Rinkeby Test Net If you have no Ether on Rinkeby Test Net, you can receive some free Ether here in order to try the contract.

The frontend is hosted on this site: CryptoMarket FrontEnd

Privacy (not yet implemented)

In order to guarantee the privacy of the customers, each seller (i.e. everyone) can store a public key into a dedicated array and then the shipping address can be inserted ciphered. This feature is free to the customer because of the cypher function is executed before every transaction, by the javascript code.

Every line of code is available on GitHub: CryptoMarket Repository



ethereumblockchainenglish Share Tweet +1