What is a dApp

Decentralized applications, commonly referred to as dApps, are applications that run on a decentralized network. With blockchain running on a network of nodes instead of centralized servers, applications built on them operate in a decentralized environment. This allows them to be accessible by participants on the network, provides transparency, and ensures that data and transactions are not owned by one governing authority.
The functionality of dApps is built using a blockchain technology called smart contracts. Smart contracts are basically a collection of code that execute commands on the blockchain. As more features and capabilities are built to operate the application, smart contracts are created to execute those functions. Ultimately, dApps operate through a collection of smart contracts on the blockchain.
So how do you use the dApp? Well, the collection of smart contracts built to run a dApp would be running on the back end. Users can interact with the back end through a front end user interface. When you are using an application online or on your phone, you are interacting with the front end. The front end is for interaction, with the backend executing functions and capabilities.
Not all dApps necessarily need a front end UI. Let's think about what an application is. An application simply executes a function or a need. Even a single smart contract can be an application if it executes a need. In a blockchain ecosystem, smart contracts can leverage other smart contracts built on the network. This can create functionalities that operate as applications all on the blockchain, or back end.