Decentralized Applications (DApps) are applications that run on a distributed computing system, that is, a blockchain network. This article will show you how to build a decentralized app and what are the requirements of a decentralized app.
While there are various ways of defining a DApp, they are usually described as applications that have the following characteristics:
Open Source – Thesource code is intentionally made available to the public, meaning that anyone is able to verify, use, copy, and modify the code.
Decentralized – Since DApps run on blockchain networks, they are not controlled by a single entity or authority. Instead, they are maintained by multiple users (or nodes).
Cryptographically secure – The application is protected by cryptography, meaning that all the data is recorded and maintained in a public blockchain. There is no single point of failure.
There are multiple issues in legacy applications that the DApps try to solve. The main benefit of choosing a DApp over a traditional app is that the latter uses a centralized architecture by storing their data on servers controlled by a single entity. This means they have a single point of failure, which is susceptible to technical problems and malicious attacks.
A compromised centralized server may take down the entire network of the application, making it temporarily or permanently unusable. Other than that, centralized systems suffer from data leakage or theft quite often, putting the companies and individual users at risk.
There is a great variety of DApps, with different use cases. They may include gaming, social media platforms, cryptocurrency wallets, and financial applications (DeFi).
Decentralized applications fuel their own activity through a tokenized system (digital tokens created through the use of smart contracts). Tokens can be specific for a particular DApp (e.g., the Steem token used on Steemit), or they can be native to the blockchain that hosts the DApp, like in the case of CryptoKitties using ether (ETH).
Summing up, DApps are designed as open-source projects that run on top of a blockchain network. In turn, the distributed nature of these networks provides transparency, decentralization, and resistance to attacks.
Hope this article can provide you with a further understanding about how to build a decentralized app and what are the requirements of a decentralized app.





















