Decentralized Applications (Dapps)

Learn what a decentralized application is and how to design one.

The philosophy behind Web 3.0 applications (or dapps) is decentralizing all aspects of an application that can be decentralized, for example:

  • Back-end software (application logic)

  • Front-end software

  • Data storage

  • Message communications

  • Name resolution

Each of these can be somewhat centralized or somewhat decentralized, but while purely decentralized apps are an audacious vision of the future, the term dapp is often applied to a set of smart contracts with a web frontend, where smart contracts are a way to decentralize the controlling logic and payment functions of applications.

Web 2.0 applications

Imagine a simple blog application. Users open the browser, publish some content, and interact with other users’ content. This application basically needs three components:

  • A place to store data (posts, comments, likes, etc.)

  • A place for running the business logic (algorithms, rules, or calculations on data)

  • A user interface (the point of contact with users)

Most Web 2.0 applications realize these three components with centralization in mind. The most commonly used architecture is the so-called three-tier architecture.

Get hands-on with 1200+ tech skills courses.