39 lines
3.1 KiB
Markdown
39 lines
3.1 KiB
Markdown
## 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](./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?
|
||
* The Status OKR voting app: https://github.com/status-im/contracts/tree/000-snt-voting-dapp
|
||
* Vortex demo using embark: https://github.com/Horyus/vortex-demo-embark/blob/master/package.json#L23-L35
|
||
* ERC-721 (collectibles) tutorial and demo app: https://github.com/status-im/embark-tutorial-erc721. Tutorial docs here: https://github.com/status-im/embark-tutorial-erc721/tree/tutorial-series/tutorial
|
||
3. Where can I learn more about the API of the EmbarkJS object?
|
||
* We are currently working on updating the docs, and additionally we are currently making EmbarkJS a library on its own right: https://github.com/embark-framework/EmbarkJS
|
||
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
|
||
1. Create account - hangs with metamask
|
||
* Cause - most likely non-increasing nonce issue with metamask: https://github.com/MetaMask/metamask-extension/issues/1999)
|
||
* Solution - open issue
|
||
|
||
##### 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
|
||
* *Cause:* known issue with metamask: https://github.com/MetaMask/metamask-extension/issues/1645)
|
||
* *Solution:* open issue
|