I recently released the first version of akryum:vue-ssr alongside a Work-In-Progress comprehensive demo project for creating fully-featured Meteor application with Vue:
This will ultimately include all the main features we could expect from a modern web app and demonstrate how to use vuex, apollo, accounts and more. If you want to have something else included, don’t hesitate to make suggestions.
Give it a try and contribute by opening issues and PR!
F.e. I couldn’t find the reason why in my app the client-side code shows up below the server side code instead replacing it. Then I realized why you’re explicitly setting <div id="app"> in your App component. I believe it’s worth mentioning it in the vue-ssr docs.
Right now the only issue I get is a result of cached Vuex getters (which are of course cached by design). So when I log out, the state in Vuex shows the user object is empty, but the getter shows the user is still there. And when I log in, the getter shows the user is not available even if the user is in the state.
This leads to “different content on client” message (because the getters in client-side Vuex are recomputed) in views that depend on the getters and reloading whole DOM with client-side code. Other views are fine.