1👍
Vue.js is Progressive.
You can add it to your project in any degree of integration.
Since tymeleaf is processed in backend, a full featured vue project delivers bundled version of files already rendered, so they concurr at this point.
A good silver lining is to add it as a regular javascipt dependecy, managed by webjars, then consume it in thymeleaf templates.
By doing that, you give up on single file components, dev server and hot module replacement during development, but you still able to create vue instances and use reactivity on thymeleaf-rendered pages.
See here more details about how to use vue as standalone script.
update
I wrote a small blog post detailing more on how one could add some modern vue capabilities into a already running fine java web project.
- [Vuejs]-Vue2: changing data property of child component based on a prop from a parent component
- [Vuejs]-Vue :to from a properties