status-im / dappcon-workshop-dapp

DApp to be used in Dappcon
4 stars 3 forks source link

Decentralized Twitter dApp built using Embark by Status

Developed for a DappCon workshop, this dApp provides an example of how to build a dApp using Embark.

Instructions

To follow along, please use the instructions.

FAQ

  1. Can I use embark simulator? Yes, you can. You can even use ganache-cli directly if desired. We are not using for this dApp due to websockets limitations of ganache.
  2. Do we have some success stories of people using embark and delivering projects?
  3. Where can I learn more about the API of the EmbarkJS object?
  4. What are the "key" features of Embark?
    • Embark is focused on the trinity of web3 components that can be used to create truly decentralised applications
      • The original trinity of web3, from the ethereum platform perspective, includes consensus, blockchain, and smart contracts. As well as swarm for decentralized storage and whisper for decentralized communication.
    • Embark is a “true” dApp framework to assist the developer in building real dApps. Embark can also be used just for developing contracts as well.
    • Embark is meant to help the developer easily integrate with other decentralized technologies, like storage, communication, and (in 3.2) naming systems.
    • Embark is meant to be both advanced and easy to use
    • Embark has reasonable defaults and tries to make your life easier, but it can always be overridden for configurable for your specific needs
    • Embark has a very plugin-driven architecture, so developers can also extend it to their own needs
    • Integrated debugger - we are currently working on this, and the developer can always use remix as an alternative

      Known issues with this dApp

      Issues on localhost
  5. Create account - hangs with metamask
Issues on testnet (rinkeby)
  1. Sometimes errors with the “known transaction” when deploying a contract.
    • Cause: not yet known
    • Solution: only solution so far is to increase the gasPrice in contracts -> testnet -> deployment. Embark team currently investigating.
  2. Getting contract events (tweets in this case) doesn’t work
    • Cause: Metamask known issue “The current provider doesn’t support subscriptions: MetamaskInpageProvider”
    • Solution: open issue
  3. Websockets errors