Using AngularJS for a frontend
I'm a fan of "static" user interfaces. That's why I hate Microsofts politic about the menu in office: every new version changed some parts of the menu. And then they made it even worse with ribbons! I like to click every time at the same place, whenever I want to do the same action.
So my ideal Vanilla theme must have all relevant links with max. two clicks at hand. Current theme does provide that quite well when you look at the discussions. But when you look at the profile, discussions are out of reach. When you write a new message or a new discussion, you are completely lost (at least you have the breadcrumbs, but that is very meager)
And if you manage to design an interface that shows all relevant links with that two-clicks-away-comfort and that navigation never really changes more than highlighting what is selected right now, you wouldn't have to reload that on every page load, right?
So I had spent some time thinking about how nice it would be to have an app like forum experience with some framework like AngularJS. I'd have my static navigation elements, maybe all in div.Head, and so only div.Body must be refreshed. Depending on the modules, it might be even enough to only update div.Content.
My first assumption was that you have to write a complete new interface in order to make something like that work and that's true for sure: angular will need templates with special markup in it. I even spent some minutes thinking about buying some ready made angular admin dashboards and trying to use Vanilla as the backend! While that is a tempting idea (to be honest: I find the idea to have something like that way more attractive than thinking about working on that), I already thought how to implement the navigation I like.
And when thinking about the content, I came to the point where I thought about modules that use events to render their output to the standard functionality. AngularJS needs HTML templates with "static" code, while some (if not most) plugins rely on inserting content dynamically.
By now I think that is a show stopper: if you create an app like interface with AngularJS, it will be also static when it comes to plugins. Vanilla plugins wouldn't be able to extend such a theme.
Has anybody ever heard of something like a pluggable AngularJS interface?
Or can anyone imagine how AngularJS could be used with Vanilla without sacrificing flexibility?