With Vue 2.0 - Why not use Vue.js as view layer? (Vue.js will support virtual DOM and jsx)

I started a project to integrate vue with meteor, including single-file components without webpack: https://github.com/Akryum/meteor-vue-component
Feel free to contribute!

10 Likes

Amazing. I will keep an eye on this :thumbsup:

Lots of answers hereā€¦

Very cool @akryum! Wow, youā€™re even planning Apollo integration soon, that rules!

2 Likes

I saw your project the other day on twitter. Vue.js re-tweeted it.

It looks really promising. Kudos for starting that, itā€™s awesome.

When do you think it will reach some kind of maturity to be safely implemented in a meteor app?

The packages need more testing and Iā€™m not done with all the features list yet. I canā€™t give you an exact estimate but you can already test some of them and report any issue, if you want to contribute.

I will :slight_smile:

Now with apollo integration!
https://github.com/Akryum/meteor-vue-component/tree/master/packages/vue-apollo

9 Likes

Awesome stuff @akryum!

Internet 5! :wave:

Awesome. Yeah templates are a big part of why I like Blaze. With React, constructing HTML inside of a JavaScript string makes technical sense, but then it feels like Iā€™m going back to what I didnā€™t like about programming for the web with vanilla PHP.

3 Likes

The Apollo integration itā€™s huge! As MDG seems not interested support Blaze in Apollo, this could boost Vue adoption as the Meteorā€™s layer thanks to your work :wink:

1 Like

Wow. Just the other day I was thinking, ā€œwouldnā€™t it be awesome if Meteor had full support for Vue.js?ā€

Glad to hear Iā€™m not alone. Iā€™m currently busy with some projects (not involving Vue), but I will definitely try and contribute to any ongoing efforts when I get some time.

Bookmarking this thread in the meantime.

2 Likes

You can now auto register components with the .global.vue files:

5 Likes

Thatā€™s an awesome feature @akryum !

In my opinion for both MDG and the community it would be smarter to invest in Vue.js now, instead of trying to keep Blaze alive.

5 Likes

When you code, you love to see in your browser the changes that you make in your app, and meteor current hot-reload is quite slow and reloads your entire app.
Well, now you can do just that with your vue components! Instant hot-reloading has landed in akryum:vue-component@0.1.0 in native meteor (no webpack).


This feature is experimental and may cause your app to not reload by itself when meteor wants it.

9 Likes

Awesome, please keep up the great work.

This is awesome! Iā€™ve been wanting native Vue components for so long now, thanks a ton for your work. Iā€™ve got a decently large Meteor+Vue app, Iā€™ll definitely bring this into my project and pitch in for any bugs I find. If your package could handle code splitting/lazy loading of components as well, this would be a game changer

1 Like

Thanks for your work, it looks really sweet! May be someone has some kind of starting guide for meteor and vue?

2 Likes

This is a great idea, and would help get adoption rolling. The more ppl we can get to start using Vue in Meteor the more mature tooling will come of it. Some stuff a guide could include

  • @akyrumā€™s meteor vue components with hot-reloading and apollo data integration
  • Tracker<->Vue data integration. thereā€™s a few packages like vue-meteor-data
  • (doesnā€™t exist yet) FastRender support, either at the router layer via VueRouter or ideally at the component level
  • a full starter app that includes all the packages needed to get up and running
1 Like

For you 2nd bullet point, I made my own package to integrate tracker data and meteor subscriptions into vue components: https://github.com/Akryum/meteor-vue-component/tree/master/packages/vue

3 Likes