DApp
A Decentralized Application (DApp) is a software program that operates on a decentralized computing system, typically a blockchain, rather than a centralized server. DApps leverage smart contracts to execute logic, allowing them to provide services like finance, gaming, or supply chain management without a single entity controlling the user data. The backend code runs across multiple nodes, ensuring that the application remains resistant to censorship, downtime, and unauthorized tampering.
Explain Like I'm 12
A DApp is like an app on your phone, but it does not belong to a big company. Instead of the data living on one company's private server, it lives across thousands of computers, making it impossible for someone to just turn off the app or change the rules of the game on you.
Why It Matters
DApps represent the evolution of the internet toward Web3, shifting power from platform providers to individual users. They allow for trustless interactions, enabling global finance, digital ownership, and autonomous organizations to function transparently.
How It Works
DApps consist of a frontend user interface and a backend smart contract. While the interface looks like a traditional web or mobile app, the backend logic is deployed on a blockchain. When a user performs an action, the DApp submits a transaction to the blockchain, where the smart contract executes the code and updates the state of the distributed ledger.
Real-World Example
Uniswap is a popular decentralized exchange (DApp) where users swap tokens directly with one another without needing a centralized bank or broker.
Advantages
- Permissionless access for any user
- High degree of censorship resistance
- Transparent and auditable backend code
Limitations
- Potentially high transaction costs
- Slower performance than centralized applications
- User interfaces can be harder to navigate
Common Misconceptions
- Any application that uses a database is a DApp.
- DApps are completely immune to any form of security risk or hacking.
Knowledge Explorer
Explore This Concept in the Knowledge Graph
See how DApp connects to other concepts, books, research, and developer resources.
Related Terms
Backend
In the context of blockchain, the backend refers to the server-side infrastructure and underlying protocols that execute logic, manage state, and interact with the distributed ledger. Unlike traditional centralized backends that reside on a single server, a blockchain backend consists of a network of nodes running client software to maintain the state of the network. It processes smart contract execution, manages peer-to-peer communications, and ensures compliance with network rules through local consensus validation.
Blockchain
A distributed, decentralized digital ledger that records transactions across many computers in such a way that the records cannot be altered retroactively without the consensus of the network. Each block contains a cryptographic hash of the previous block, creating an immutable chain.
Blockchain
A blockchain is a distributed, immutable ledger technology that records transactions across a network of computers. Data is stored in 'blocks' that are linked chronologically using cryptographic hashes. Once data is verified and written, it is computationally impractical to alter or delete, ensuring a single, verifiable version of the truth without a central intermediary. This architecture provides transparency, security, and trust by requiring consensus among network participants rather than relying on a central authority.
Frontend
In the context of blockchain and decentralized applications (dApps), the frontend refers to the client-side layer that provides the user interface (UI) through which users interact with the blockchain. Unlike traditional centralized applications where the frontend might pull data from a private server database, a blockchain frontend utilizes libraries like ethers.js or web3.js to communicate directly with smart contracts via a blockchain node or a gateway service. It acts as the visual bridge, translating complex cryptographic transactions into intuitive interactions for non-technical users.
Smart Contract
A smart contract is a self-executing program stored on a blockchain that automatically runs when predetermined conditions are met. These contracts eliminate the need for intermediaries by encoding terms directly into lines of code, ensuring that the agreement is enforced exactly as written without human interference. Because they reside on an immutable ledger, the execution results are verifiable, transparent, and impossible to tamper with once deployed.
Smart Contract
A self-executing program stored on a blockchain that automatically enforces and executes the terms of an agreement when predetermined conditions are met. Smart contracts are deterministic, immutable once deployed, and form the backbone of decentralized applications.
Wallet
A software program or hardware device that stores the cryptographic keys needed to access and manage cryptocurrency. Wallets do not store the currency itself — they store the keys that prove ownership of on-chain assets.
Wallet
A blockchain wallet is a software or hardware tool that manages the private and public keys required to interact with a blockchain network. It does not store actual digital tokens; instead, it stores the cryptographic keys that allow the owner to authorize transactions and view their balance on the blockchain ledger. Wallets provide an interface for users to send and receive assets, manage identities, and interact with decentralized applications.
Web3
Web3 represents the next evolution of the internet, characterized by decentralization, blockchain integration, and user ownership. Unlike Web1 (read-only) and Web2 (read-write, centralized), Web3 introduces the 'read-write-own' paradigm. It utilizes decentralized protocols to allow users to own their data, participate in governance, and interact with decentralized finance (DeFi) applications without the oversight of traditional internet conglomerates or centralized gatekeepers.
Web3
A vision for a decentralized internet built on blockchain technology, where users own their data, identity, and digital assets. Web3 evolves the web from read-only (Web1) and read-write (Web2) to read-write-own, using tokens, smart contracts, and decentralized protocols.