I think you're gonna like Aurelia[1]. It's badass compared to Angular 2, React & Polymer. You get this really, really nice feeling of writing pure Javascript. It's smaller than Angular, strictly follows Javascript standards which is soooo nice.
No
{{bindingVariable}}
but instead: ${bindingVariable} // Just like in Javascript template strings!
Binding? Sure: <input type="text" value.bind="variable">
Two-way? Of course: <input type="text" value.two-way="variable">
One time? Yep: <input type="text" value.one-time="variable">
The templating is so simple, as it follows the APIs as well, for example - how would you bind markdown to the innerHTML of an element? Well, just pass the variable through a ValueConverter in your bind: <div inner-html.bind="variable | markdown">
It is also pluggable. You can replace almost everything in Aurelia with your own implementation very easily.[1] - http://aurelia.io/
EDIT: Added a little more to explain my reasoning.