DApp, like other types of application, need a UI for user to interact with the platform easily. But DApp's frontend is a little different from traditional app's frontend: it needs to come along with some kind of wallets, which basically handling signing and sending transaction to blockchain. Some well known wallets are MetaMask, Wallet Connect...
Modern library such as Web3, Ethers can help interacting with these wallet.
Checkout these template if you don't know how to get started: