Separating View from Data, Plugins, Modularity

How modular is Discourse internally? Will it easily be possible to develop a plugin which uses a different approach to discussion for a certain category?
Does Discourse use the MVVM principle or something similar, so that a discussion tree (or network) can be displayed in a different manner than it is now?

Basic example: Show Discussion as a tree rather than a list (this is not what I want to do)

If not, is it planned to achieve more modularity?

These are very diffuse questions. You can find your answer to “how modular” by perusing our #plugin directory and see what people have done with it. Then check out these beginner’s guides:


Read the Source, Luke

PS: Discourse is an Ember app powered by a Rest API, so yes.