
I understand that the back-end sits on top of the blockchain (which is decentralized). However, all the implementations I am aware of are using centralized servers for the front-end. Are there any fully decentralized DApps?

I understand that the back-end sits on top of the blockchain (which is decentralized). However, all the implementations I am aware of are using centralized servers for the front-end. Are there any fully decentralized DApps?

Just like any other website, DApps rely on a back-end and a front-end. While back-ends are decentralized because they are nothing more than smart contracts, front-ends are still centralized. And there's a good reason for that- they are dynamic and the content has to be changed often. Not to mention that storing data on the blockchain is expensive.
Just like any other website, DApps rely on a back-end and a front-end. While back-ends are decentralized because they are nothing more than smart contracts, front-ends are still centralized. And there's a good reason for that- they are dynamic and the content has to be changed often. Not to mention that storing data on the blockchain is expensive.

Front-end can be comprised of native apps running on users' own devices. It doesn't have to be hosted on a server. For example, web3 provides a Java version that can be used on Android. This approach is more decentralized. However, users still need to download the client from a centralized server.
Front-end can be comprised of native apps running on users' own devices. It doesn't have to be hosted on a server. For example, web3 provides a Java version that can be used on Android. This approach is more decentralized. However, users still need to download the client from a centralized server.

Decentralizing the front-end isn't really a priority because it's job is really just to give a good interface for creating transactions, and anyone could make an alternative interface if they wanted.
Decentralizing the front-end isn't really a priority because it's job is really just to give a good interface for creating transactions, and anyone could make an alternative interface if they wanted.