Difference between revisions of "DApp Development"

From Grundy
Jump to navigation Jump to search
(created new page for dapp development)
 
(2 intermediate revisions by the same user not shown)
Line 19: Line 19:
  
 
== web3.js: Web3 for JavaScript Developers ==
 
== web3.js: Web3 for JavaScript Developers ==
 +
web3.js is a collection of libraries which allow you to interact with a local or remote ethereum node, using a HTTP or IPC connection. The <code>web3</code> JavaScript library interacts with the Ethereum blockchain. It can retrieve user accounts, send transactions, interact with smart contracts, and more.
 +
 +
* [https://www.dappuniversity.com/articles/web3-js-intro Here is a brilliant tutorial (with embedded videos)] to get you started with using the <code>web3</code> library in JavaScript
 +
* [https://www.youtube.com/watch?v=E8l4UryS73w This is a talk] titled Web3.JS: Ethereum JavaScript API, at Devcon 3 (Devcon is the only annual gathering held by the Ethereum Foundation). It will give you an understanding about the why the API has been created in a certain way, its capabilities & how to use it.
 +
* [https://web3js.readthedocs.io/en/v1.2.8/ Official Web3.js documentation]
  
 
== web3.py: Web3 for Python Developers ==
 
== web3.py: Web3 for Python Developers ==
 
+
Web3.py, as mentioned in the official GitHub repository, is a python implementation of the web3.js API.For Python developer, Web3.py is the go-to library for interacting with the Ethereum Blockchain.
 +
* [https://www.dappuniversity.com/articles/web3-py-intro This tutorial (with embedded videos)] will introduce you to <code>web3</code> library in Python & how to use it to interact with Ethereum.
 +
* [https://web3py.readthedocs.io/en/stable/ Official web3.py documentation]
  
 
= Ethereum DApp Development Tutorials =
 
= Ethereum DApp Development Tutorials =

Revision as of 20:50, 23 May 2020

Decentralized applications or DApps are a piece of software that communicates with the blockchain, which manages the state of all network actors. The interface of the decentralized applications does not look any different than any website or mobile app today. The smart contract represents the core logic of a decentralized application. Smart contracts are integral building blocks of blockchains, that process information from external sensors or events and help the blockchain manage the state of all network actors.

DApps are not something native to Ethereum only. Several blockchains like EOS, Tron, etc. have a multitude of interesting DApps built on top of them. Here is an article for you to know more about different DApps on all these platforms.

However, this article focuses on DApp Development on Etheruem using Solidity (for smart contracts), Web3 (communicate between the interface and the smart contract on the Ethereum) & some front-end framework(s) (To build the interface).

Prerequisites

  • Some familiarity with writing & deploying smart contracts using Solidity is needed. If you are new to Solidity, check out our Ethereum Smart Contracts Tutorial. You can also learn Solidity from this amazing tutorial.
  • Familiarity with some frontend-development framework. Though not a hard prerequisite, it is better to have some working knowledge of frontend development. For resources, you can have a look at our wiki articles on React & Angular.

Web3 - The Start of a Decentralized Internet

Web 3.0 or simply Web3 is an inclusive set of protocols to provide building blocks for application makers. These building blocks take the place of traditional web technologies, but present a whole new way of creating applications.

To develop DApps, we must use some form of Web3 to interact with our smart contracts. In Web DApps, Web3 can be injected into the browser by tools like Metamask (a crypto wallet) or Mist browser. By injecting Web3, it means that they act as a provider for the web3 object needed to interact with Ethereum.

web3.js: Web3 for JavaScript Developers

web3.js is a collection of libraries which allow you to interact with a local or remote ethereum node, using a HTTP or IPC connection. The web3 JavaScript library interacts with the Ethereum blockchain. It can retrieve user accounts, send transactions, interact with smart contracts, and more.

web3.py: Web3 for Python Developers

Web3.py, as mentioned in the official GitHub repository, is a python implementation of the web3.js API.For Python developer, Web3.py is the go-to library for interacting with the Ethereum Blockchain.

Ethereum DApp Development Tutorials