If the web is to be decentralized in the same way that the internet is decentralized, it will be much better if it's never "designed" at all. If your app wants to talk to my host, cool. If it doesn't, that's cool too.
That you can pick a couple of technologies such as these and use them now, but in the spirit of "If your app wants to talk to my host, cool. If it doesn't, that's cool too."
And you need a way for the app to find the host; that needs to be designed too.