Timeline for Typical architecture of a Dapp with a browser client
Current License: CC BY-SA 3.0
12 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Feb 18, 2017 at 19:03 | comment | added | Ashish Sinha | Exactly. That's the use case I am talking about. Users should be able to interact with the smart contracts on the blockchain. (yes, transaction signing can happen through a service). So the point I want to confirm is that any "component" trying to interact with the ethereum network will need a web3 (or similar) + geth (or similar). And that "component" can be anything - desktop application (like wallets) or server-code of a web application (like web-wallets and etherscan.io and browser solidity). I hope my understanding is in the right direction. | |
Feb 16, 2017 at 15:11 | comment | added | Samuel Hawksby-Robinson | It depends on your use case. Do you want your users to interact with contracts? If so, the users will need a secure way to sign their transactions. A purely server side Ethereum client will mean that users won't be able to do this, unless you build an additional service that functions just like MetaMask. | |
Feb 16, 2017 at 15:03 | comment | added | Ashish Sinha | Hi Samyoul - I haven't yet gone till there. I am only trying to understand how a smart contract / dapp can have a web client. For example, when I visit etherscan.io, it communicates with the ethereum network (having smart contracts) to display the data it displays. How does it do it? Does the js on my local browser connect directly to the etheruem network? I don't think so. What I understand is that ethereum network can be accessed only through components like web3 (or similar) and geth (or similar) and I have none of these on my laptop. So where are these? Somewhere in between? | |
Feb 16, 2017 at 11:30 | comment | added | Samuel Hawksby-Robinson | Out of interest how are your users managing their Ethereum keys? | |
Feb 16, 2017 at 11:22 | history | edited | Samuel Hawksby-Robinson | CC BY-SA 3.0 |
edited body
|
Feb 16, 2017 at 10:47 | comment | added | Ashish Sinha | Actually by ethereum client, I meant geth/eth/pyethapp. End users are general public who just type in www.xyz.com into the browser to access the app (dapp). We cannot expect them to have the entire geth installed on their laptop! There needs to be a web application on a server with server-side javascript (node.js), web3 and geth to help the web application to connect to the ethereum network. | |
Feb 16, 2017 at 6:32 | comment | added | Rob Hitchens | Above is a good answer. Just so it doesn't seem like server-side nodes is terribly unusual (nodejs, python, etc.) I would point to a similar question here: ethereum.stackexchange.com/questions/11624/… | |
Feb 16, 2017 at 6:28 | history | edited | Rob Hitchens | CC BY-SA 3.0 |
got carried away after I noticed a missing word.
|
Feb 15, 2017 at 13:27 | history | edited | Samuel Hawksby-Robinson | CC BY-SA 3.0 |
added 333 characters in body
|
Feb 15, 2017 at 13:21 | history | edited | Samuel Hawksby-Robinson | CC BY-SA 3.0 |
added 333 characters in body
|
Feb 15, 2017 at 13:15 | history | edited | Samuel Hawksby-Robinson | CC BY-SA 3.0 |
added 333 characters in body
|
Feb 15, 2017 at 13:09 | history | answered | Samuel Hawksby-Robinson | CC BY-SA 3.0 |