Certain functionality of a DApp can be hosted on the blockchain as smart contracts. How about other resources such as HTML and JS files? Multiple places reference "Swarm" as the place to host these resources, but when you look at Swarm wiki, it's basically a list of TO-DOs. There are DApps out there right now. How are they hosted?
This mostly depends on how you define "DApp".
Following the definition of Buterin, a DApp is an application that doesnt have any central components (simplified). So all data is essentially stored in smart contracts on the blockchain and/or using concepts like IFPS.
The app itself (UI code, business logic, etc) is then run (and stored) by every user.
I just found one possible answer, which is to host the HTML & JS on IPFS as explained here in section 4 "Deploy the application online with IPFS" and then you can point the DNS settings of your domain to IPFS too