Vue is easy to learn, easy to work with and it has everything in the box. Once you start working with vue you won't want to work with any other front end frame work.
You would, it's not all about developer experience, but also have good experience of other frameworks would benefit in long run. It's just one of many tool for building web app
I started with Vue, tried to learn React for a personal project, and immediately hated it. React is so much more convoluted than Vue that I scrapped that and started again after a week of work.
After seeing the good work Svelte has done, I had a feeling that precompiling would be coming to the other major frameworks. Good to see it coming so early to Vue.
The downside of sveltekit is, it doesn't seem to replace Angular, I hate angular and react, I want Angular's http client , client routing, shared service kind of equivalent in Sveltekit also. I don't want SSR and prerender nonsense, just need true SPA that calls external REST API. For this to happen, I need shared service which has get, post methods and return observable. Then how to utilize that in routes? Do you know any Enterprise grade sveltekit starter template available to purchase or download?
@@Almighty_Flat_Earth For HTTP can use the browser's fetch() or axios if you want something configurable. SvelteKit has a router. Shared "services" are just javascript modules. And believe me, if you're running an "enterprise" app, you most definitely _should_ want SSR and prerendering in order to scale.
move away from react it's dogshit only popular nothing else bad maintained libraries, too much code for nothing (useless 2000 hooks) redux library is dogshit and overcomplicated for nothing, slower than vue, less organized and structured and featured support than angular ,,,,, and yhea i have worked on both big and small projects with angular vue and react i still have nightmares of the react ones.
Trust me. You'll love it. I tried React before Vue and I don't wanna get back. Every time there's a new React feature, I try it because I love to try new things, but at the end I'm like "Nope, I still prefer Vue".
@@angelhdzdev It is just preference, i started with Vue years ago with the first release and then moved to React, i just love to write in JSX and use hooks. Vue is amazing don't get me wrong, but is just a matter of preference. If i would have to look at the future i would love to see svelte becoming popular cause is amazing and super fast in dev and prod.
@@lucabaxter4002 yeah, some people dont understand that not always is about what is better than what, but what we like. I like react. At the end of the day its just a reactive library for JS. In Flutter with Dart we use setState method to force a rerender/redraw/rebuild. But i just felt comfy with Vue ecosystem, VueRouter, Pinia, Quasar UI library, and now Nuxt. At the end of the day we all reach the same goal LOL, a web app. The tools you use are irrelevant. Im glad that there are many reactive libraries to pick from. Lit, Solid, Svelte, Preact, Angular, React, Vue, Ember, Knockout, Backbone...
@@gerardocalia3052 vue and react uses a virtual DOM which is basically a separate data structure in JS that mirrors the actual DOM. Any changes in the state is diffed and changes will be made to the actual DOM
Vue 3 is the best framework out there bar none. So impressed with the Vue core team. They dont nearly get enough praise even with all the praise they get
@@Smoonwalkerm Heres why I prefer Vue to Svelte. The best thing about Svelte is how simple its API is. Its SFC structure is really clean and you can do a lot in very few lines of code and have those lines of code be very readable. However, with Vue 3 script setup you can basically do exactly the same in vue. Vue with script setup has an SFC structure that looks very similar to svelte and only differs in very meaningless ways. But unlike Svelte, Vue 3 actually lets you extract that exact API into composable modules that easily lets you share logic between many components without swtiching APIs and while using all the same hooks and reactivity you are used to inside components. In Svelte you have to completley change your API to do that and even when you do youre restricted in many ways which you just arent in vue 3. This is because Vue reactivity just uses native proxy reflect. Which is why Vue reactivity even works outside of the vue context. This means that vue reactivity is actually framework agnostic. Thats how modular vue is. Yes. You can literally just extract the reactivity out of vue and not use vue, just the reactivity. The actual reactivity of vue doesnt depend on vue. Thats crazy. And its really powerfull. Because it lets you have basically limitless ability to compose your files and shared logic in whateverv way you want and have it still work. In fact, in vue, even though they have their own stores for state management you can actually just create your own state managment with just using the vue reactivity hooks that you are already using in all your components. And even if you did swich to the vue stores, pinia is so similar to the regular vue composition api its basically the same thing anyway. This uniformity is super clean and much more composable than anything you can find in either React or Svelte. For instance, both in react and svelte if you want to share some state only between certain components you would have to wrapp your components in some context. Which is its own thing you need to figure out. In vue 3 you could just do the exact same hooks you have already been using. Put them in their own file and just import into the components that need this. Like sharing js functions except the functions can use vue hooks and set up their own state thats either instance based or independent of instance. The only thing you need to do to switch between instance based and independent is just wheter or not you put the reactive ref inside or outside the function. Its that dead simple. It lets you use the same API everywhere and however you want in whatever context you want even as far as to use it outside of vue completley. For this reason I really dont think Svelte is better than Vue. The best things about Svelte can be found in Vue already. And Vue takes that great simple SFC structure. Makes it way more modular and puts it in an ecosystem thats bigger than Svelte. With that, I feel like its hard for me personally to switch over to Svelte
@@mehdikhody What makes you say that using proxy reflect is bad? Vue had the same approach as Svelte in Vue 2. They both used getters and setters. Moving from Vue 2 to Vue 3 all I see are benefits of proxy reflect approach. I haven't had a single issue with it and all I've had is more flexibility and modularity
@@_julian rewriting all apps with a different library (like Quasar) takes a lot of time :/ Codebase turning to 'Legacy' after 1 year, is not cool !! I thought about switching to Tailwind, so it is not depended on Vue updates, but I have 0 experience on it
It's still kinda difficult to look out for oppotunities as a 4 years experienced Vue js developer in the subcontinent. Started from quasar and now working in Vuetify. Anyone's suggestions and guidance would really help. to Evan and other team members , Kudos on the future explorations , they really look promising.
Wow, if the new vdom-less option goes live, I'll think of it as "svelte done right". I'm a Vue dev, but I tried Svelte because everyone said it's faster. Tried it... the community projects is so narrow, the conditional dom {{ if }} syntax just threw me off. I would be too much work to migrate to Svelte, even for a new project. This feature in Vue is a dream come true.
Disappointed with my attempt to use Nuxt 3 (especially compared to Nuxt 2). Couldn't get it to work at all and had very curious behavior. Will wait for the official release hoping it'll fix these issues
Same. I never tried Nuxt 2 but heard all good things. Tried Nuxt 3 and got nothing but errors. I don't even care about SSR but it felt forced and broken. Strange. Back to normal vue3 which I still really enjoy.
@@jdhaines I'm having a good time with NestJS + MongoDB + Mongoose (or Firebase/Firestore) + Vue 3 Script Setup + Vue Router. Used to have Pinia in my stack, but I recently noticed I can do the same with composables. One less dependency. And I liked GraphQL, but need to practice it more to understand it better, and being able to add it in my stack. Cheers!
i'm a developer so how can i do seo with vue with google search console i use laravel in combination with vue but i can't index google search because it's not spa or ssr
i was wondering long time ago why vue still did not update complator and not remove virtual dom ? I am sure that increasing performance and decreasing bundle size is one of keys to help vue grow up to the moon. Also the mention types inporting in components are really welcomed.
bootstrap-vue is unlikely to be supported in vue 3. Now that bootstrap 5 no longer need jquery, its perhaps better to use bootstrap without a lib. If you really want to, primevue is an option
I have a lot of issues using Vue for large applications, not regular widgets or something. Like React and Unlike Angular, it does not give you something beyond rendering. And when you building and application structure, you meet problems accessing resources. I'm using DI for share data between services, handlers, models and components, but it looks uglier as it is in Angular. Maybe there is a solution that may make this simplear. At least like a rule or pattert for interapplication resources communication. Nuxt is greater in this case, but too huge. I love how Vue works, but this small piece makes me think that Angular is more way practical in use.
2 года назад+2
Did you try to share data between app parts using Vuex or Pinia?
Vue gives me the easiest time accessing resources out of all the major frameworks I've tried. Pina is awesome and even without pinia composables in Vue 3 give me some of the most flexible logic/state sharing patterns I've ever had the pleasure of using. So. I'm going to have to hard disagree with you there
@ did you read what I've wrote? Resources, not only data. Also, I don't like the way vuex works. Also, I prefer Akita, but long time didn't use, that created something new time ago.
If no virtual dom becomes true, it will not only benefit all the existing vue3 app which boost their performance and reduce the memory footprint but also draw lots of new users to use vue for its simplicity.
Like what? All the tools im aware off have been updated for vue 3. The vuedevtools are upto date. Vue router has been ready for a long while. Vuex is uptodate. And the new Vue 3 composition API even lets you do shared component state without any state managment library if you want. Also most libraries are updated now. Nuxt 3 is in release candidate and pretty much ready for production according to the authors of Nuxt. Only library thats lagging behind is vuetify and even that is in beta release now. Though honestly i dont get why people get so stuck on component ui libraries. If thats a consern then move over to something like tailwind and never worry about it again
@@samuelmorkbednarzkepler Nuxt is definitely not ready for production use yet, just because you can start up a nuxt server and a RC is out does not mean its ready, what about nuxt auth looks like that is still a long way to be release so, are you going to build an app without the desired auth tool for nuxt? Most of us love vuetify but that is still along way, there is hardly any docs for vue 3 and composition api. These are libraries that make a huge difference to be honest and alot of people will migrate to other projects like react because of this limitation in tooling and great backing from facebook. Just saying in my experience now with vue 3 l've been hitting a lot of bottlenecks.
@@100kshooter5 We are using Vue3 ever since it was in beta. Granted we have developed our own core tools and UI library, but we also placed the bet on Nuxt3 very early on. Auth? What about it? Is it hard to build one by yourself?
@@100kshooter5 Depends on whether or not you need auth, most apps don't tbh. But fair enough, I understand that nuxt auth isn't there yet and that might be an issue for some. Though to be fair, there's no reason why you should be bound to nuxts own auth system. You could build your own or use any of the other alternatives out there to help you out. The reason I said nuxt 3 is basically ready for production isnt just because you can start up a nuxt server though. Obviously that would be a dumb thing to say. The reason I said that nuxt 3 is basically ready for production is because that's what one of the core members of nuxt said. Also I understand that lots of people like vuetify but honestly I think people need to move on cause if its stopping you this bad then i feel like its not really serving you as a library and people need to start considering switching vuetify out for something a little more flexible. Nuxt 3, by comparison, took a while because they wanted to take the opportunity with vue 3 to also rewrite their own stuff. And they have a lot of custom stuff to manage. That's why we have cool things like nitro now. Nuxt 3 would probably have been stable and released ages ago if all they where going to do was just make it compatible with vue 3. Because Vue 3 really didn't have that much in terms of breaking changes at all. That was one of the impressive things about it. All this time is mostly going to these library authors doing a bunch of other shit in their reworks besides just getting compatible with vue 3. I think its a good thing Nuxt 3 took the opportunity to really do some legwork on their own code at the same time though. Ultimately it will mean that the Vue 3 ecosystem will be in a really modern state pretty soon. The fact that in this same timeframe vuetify, which is just a ui component library, is still lagging behind is a bit troubling however. But that's a vuetify problem not a vue problem and I don't like the fact that the entire ecosystem can be held hostage by a single ui component library. For me I think this is a sign that maybe there's a lot of us that need a good kick in the ass to get off vuetify. I heard quasar is good, and they got on vue 3 relatively quickly, if you insist on having a vue specific UI component library. But honestly you're better off with something like tailwind cause its less of this mess to deal with. Its framework agnostic. And its much more flexible. And I personally even think tailwind is too restrictive. Really I just don't even like ui component libraries to begin with, and definitely not framework dependent once. I feel that frontend developers would be better served taking full control and building their own components foundations. Half the time when I use ui component libraries I spend most of my time trying to overwrite the shit the component libraries wrote. Which makes me feel like ui component libraries are mostly for backend devs who are sort of moonlighting as frontend devs and really just want a quick way to get a nice looking form or something. I feel the same way about CSS frameworks. You might disagree with me on that though and that's fine. I understand how you can reasonably differ from me on those subjects. But here's where you just completely lose me though: "there is hardly any docs for vue 3 and composition api." The new Vue 3 docs have been out for a few months now. They go over composition API really well. And frankly, even before that there was plenty of info on it around. I started building with the composition API almost right off the bat when vue 3 was officially released and I've hardly had any problems solving issues in it. You could argue that there was a period before the new docs where the docs where a bit messy about this but that's just not true anymore at this point. The new docs are very much there and in good shape now
Basically you all agreeing with me that the tooling isn't ready but want to shave it down my throat, every suggestions is mentioning putting in extra work in writting my own tooling etc the problem is its not going to fly explaining that to business stack holders, that we need another month to write our own auth because the one we used in vue 2 is not ready yet, unfortunately in our case its not feasible. Alot has been put in to the apps to just make these decisions you suggest here, for small apps yes of course write your own auth and no worries about security. But there is a lot to consider and l still say for me the tools are just not yet there.
In my opinion, solidjs is the best frontend framework for now. It has almost the best performance and smallest bundle size and react like syntax. You even can't imagine better than this.
15:30 vue experimental new compilation strategy == same strategy as svelte: throw away the Virtual DOM and try to compile *.vue to *.js (similar to compile *.svelte to *.vue)! I wish to see it comes true!
its because of seeeing this video , that i decided not to use Vue3... since it will be undergoing another big change to become like Solidjs, really don't want to go through another majar migration afterwards ..
Can anyone name three original Vue features? I'm not trolling. Not looking for an argument. I'm not even a JavaScript guy. It's a genuine question. Anyone?
@@yanntiersen2217 It's a legitimate response. So, here I am at the home of Vue - as far as RUclips goes - and nobody can give me three original features. That is astonishing. How about one feature? Is there one single unique feature? Anyone?
None of these frameworks have original features. Svelte doesn't. Solid doesn't. React doesn't. They all do cool new things but they all do some version of things that have been done before. Measuring frameworks in a matter of "how many original features" they have is a meaningless way to evaluate. Vue's best value proposition from the start was to allow you to write very readable and easy to setup SFC components. But SFC isn't really new. Vue just did it better and simpler than what you could in Angular. You could make the argument that Vue 3 is the only framework among all the big frameworks that use proxy reflect for its reactivity system instead of getters and setters. So that could be one "original feature." Which is why Vue 3s reactivity system is much more modular and reliable. So much so that you can even use Vue reactivity outside of Vue, because the reactivity itself is actually framework agnostic. In fact you can use it without any framework if you want. But reactivity isn't a new "original feature," and neither is proxy reflect. And there's probably some other framework out there that did it before. Just not the way Vue did it with its SFC convenience and ecosystem attached. All these frameworks just take things that have been done, improves upon them in different ways and then puts it all together in different combinations. Its that combination and quality of features that matter. Not whether or not one framework was the first one to do it. That's like looking at a series of battleships and then asking "yeah, but can you name 3 things that battleship did first?" No. Probably not. But that doesn't mean that your very original wooden kayak with feather wings is better. So, if I was forced to give you a potential answer, probably Vue composable, Vue framework agnostic reactivity, and the Vue SFC which I think are all original in the sense that nobody else had done either of those things the way Vue does them before Vue did it that specific way. But ultimate it doesn't matter and we could probably argue till we run out of oxygen about what counts as an "original feature."
@@samuelmorkbednarzkepler You offered Svelte as an example of a framework that doesn't have an original feature. Now, I am not completely in touch with the JavaScript universe but - as far as I can tell - you could not have chosen a more innovative framework. Before I humour your bullschitt about reactive, let's REALLY focus on this. Your tactic of throwing schitt at the wall to see what sticks is hereby REJECTED. So, let's take each point you've made ONE AT A TIME. Are you seriously telling me that Svelte brings nothing original to the table? Once we've dealt with Svelte, we'll move onto React. As a sneak preview of what's coming up: I think React Native is arguably one of the most astonishing and innovative features in all of web development. So again... you really screwed up by choosing what are arguably the two most innovative frameworks in all of web development. So... would you care to elaborate on why you think Svelte brings no original features to the table? That might just be one of the most outrageous claims I've heard in a very long time.
@@davidconnelly Alright. So in other words you completely missed the entire point and now want to do some sort of keyboard battle with me about whether or not I can find examples of what svelte does elsewhere prior to Svelte? okay... Svelte does a really clean version of SFC. That's what is cool about Svelte. But SFC has been done before. In both Vue and Angular. Just not the same way Svelte does it. Which is great. But is that an "original feature?" That depends on how you look at it, which is my entire point. Svelte also doesn't use a virtual dom. That's also very cool but obviously the idea of compiling to JS isn't even remotely new. In fact arguable virtual DOM is newer than that. Its just that Svelte looked back and thought that maybe it was better to not do virtual dom. And that was a great idea. Very innovative. But was it completely original? Maybe in the way they did it for the package they had but you could easily argue that it had been done before. Does that make it less innovative? no. Of course not. Just the same as Vue has a lot of original ideas in the way they do it for the package they have and that's the point. Where you put that arbitrary line of "this is original" is sort of meaningless. Real innovation is in the package, quality, simplicity. Not whether or not literally nobody else have ever done anything similar to X thing. Talking bout react: React brought us JSX. Which is cool, but the idea of mixing JavaScript and html also isn't new. Just nobody had done it that way before react. React native is not the first to compile their frontend code to native code. Before react native there was electron. And you can do the same in Vue using something like capacitor. React is just the first one to do it in their specific way where they specifically have a thing that's only for react. From one angle you could argue these are original features, from another angle you could argue they are not. That's my point. Its the same with Vue. If react native is an original feature then so is Vue 3s reactivity and the idea of using proxy reflect instead of getters and setters. If you where to say "reactivity has been done before" I would say "yeah, you're right. So has compiling to native code or JavaScript." But in any case, If you disagree so hard shouldn't you be the one to provide example here and not me? Its like you come right out of the gate with all these strong assertions and then just give the ball back to me to go digging for points in your favor for me to discuss. And none of this is even what my point was. My point was exactly that we can argue about what counts as original forever but ultimately none of that matters. All this is meaningless. Whether or not something is "truly original" is not what powers real innovation. Some of the most innovative things ever done are just improvements on something that already existed. Ergo, vite, vue, svelte, react. Its difficult to put a line down and say "this is truly original," and we could argue forever about what that even means but ultimately it doesn't even matter cause innovation is more broad than that. That's what my point originally was. And you just skipped all that and jumped straight to "yeah, but forget the nuance lets argue anyway." I'm not that interested dude. I'm not going to do this weird keyboard warrior thing with you all night. At this point I've already wasted more time on this then I should and you don't seem like a particularly nice person to have this conversation with anyway
too bad the svelte devs knee capped themselves with sveltekit. part of the allure of svelte is its no-nonsense simplicity and intuitiveness. sveltekit is anything but that.
@@yanntiersen2217 First of all it supports everything that you need for building SPA out of the box. No need to download additional packages for simple things such as routing. It separates files based on their type unlike React and Vue where you throw everything in one file that makes everything unreadable. Another thing is modules which makes the app super easy to organise unlike Vue React where 90% of the time you and up with an architecture that no one knows how to maintain. RxJS and reactive programming is another reason for choosing Angular. It makes handling of async data super easy unlike promises ans async await. And the most important one. If you worked on an Angular project you can switch to another Angular project in like 5 minutes. With React and Vue you need an onboarding and documentation for every decision the team did before.
@@theanswer1993 First of all RXJS is not part of Angular, but is a dependency of Angular so your is all built in is not true, then, async await is difficult? better you come back to the basics of js then, RxJS is not beginner friendly as well, working with streams is something that a beginner would never get, Vue is just more beginner friendly and the learning curve is small compared to Angular. Also tell me why in 2022 i need to have for each component at least 4 files. Come on, stop with this bs of "Angular is better because..." just because Angular devs refuse to try out other frameworks. An app you could make in a week, with Angular you take a month, too much boilerplate, not beginner friendly and slow, and btw i don't use Vue but React but a supporter of Svelte.
These all work more reliably for me than any alternatives like react, webpack, next. And im not hating on any of them. But to say that vue, vite and nuxt are buggy frameworks is just dishonest
As a developer myself it feels weird being called a user 😂
Thank Evan for such a creation
Perhaps Vuser is a better term? 😆
All developers are users of dev technology.
There is even DX (developer experience), which is also a focus on Laravel.
Vue is easy to learn, easy to work with and it has everything in the box.
Once you start working with vue you won't want to work with any other front end frame work.
You would, it's not all about developer experience, but also have good experience of other frameworks would benefit in long run.
It's just one of many tool for building web app
Totally agree. I think I owe a lot to Evan You
SvelteKit says hello to all of you.
Trash talk, web assembly is gonna wipe JS out
I started with Vue, tried to learn React for a personal project, and immediately hated it. React is so much more convoluted than Vue that I scrapped that and started again after a week of work.
once Nuxt gets to a stable release, i believe many will finally transition to Vue3, including me
Quasar framework is a great option
Correct me, but Nuxt is at a stable release?
Nevermind, should have waiting with this comment until a few minutes into the video 😂
@@Ma1ne2 at the time of writing this comment, nuxt is on it's 6th release candidate. Not fully stable
Ugh tell me about it. Using Vitesse for now.
After seeing the good work Svelte has done, I had a feeling that precompiling would be coming to the other major frameworks. Good to see it coming so early to Vue.
The downside of sveltekit is, it doesn't seem to replace Angular, I hate angular and react, I want Angular's http client , client routing, shared service kind of equivalent in Sveltekit also. I don't want SSR and prerender nonsense, just need true SPA that calls external REST API.
For this to happen, I need shared service which has get, post methods and return observable. Then how to utilize that in routes?
Do you know any Enterprise grade sveltekit starter template available to purchase or download?
@@Almighty_Flat_Earth For HTTP can use the browser's fetch() or axios if you want something configurable. SvelteKit has a router. Shared "services" are just javascript modules. And believe me, if you're running an "enterprise" app, you most definitely _should_ want SSR and prerendering in order to scale.
@@soviut303 ✅
@@theLowestPointInMyLife exactly.
Still using React for now but I'm intrigued by Vue. Hope to do something with Vue soon :D
And Vite is awesome!
move away from react it's dogshit only popular nothing else bad maintained libraries, too much code for nothing (useless 2000 hooks) redux library is dogshit and overcomplicated for nothing, slower than vue, less organized and structured and featured support than angular ,,,,, and yhea i have worked on both big and small projects with angular vue and react i still have nightmares of the react ones.
Don’t due it
Trust me. You'll love it. I tried React before Vue and I don't wanna get back.
Every time there's a new React feature, I try it because I love to try new things, but at the end I'm like "Nope, I still prefer Vue".
@@angelhdzdev It is just preference, i started with Vue years ago with the first release and then moved to React, i just love to write in JSX and use hooks. Vue is amazing don't get me wrong, but is just a matter of preference. If i would have to look at the future i would love to see svelte becoming popular cause is amazing and super fast in dev and prod.
@@lucabaxter4002 yeah, some people dont understand that not always is about what is better than what, but what we like. I like react. At the end of the day its just a reactive library for JS. In Flutter with Dart we use setState method to force a rerender/redraw/rebuild. But i just felt comfy with Vue ecosystem, VueRouter, Pinia, Quasar UI library, and now Nuxt. At the end of the day we all reach the same goal LOL, a web app.
The tools you use are irrelevant.
Im glad that there are many reactive libraries to pick from. Lit, Solid, Svelte, Preact, Angular, React, Vue, Ember, Knockout, Backbone...
Solid js is one of the most amazing things i tried out, making Vue more like solid would just be beneficial.
Great update. Singapore is probably the easiest city to travel to anywhere in the world, and nice place to raise a family.
I would love a VDOM-less version of Vue like solid and svelte. That would really make Vue future proof.
I'm new to web-dev, can u tell me what VDOM-less means?
@@gerardocalia3052 vue and react uses a virtual DOM which is basically a separate data structure in JS that mirrors the actual DOM. Any changes in the state is diffed and changes will be made to the actual DOM
@@azizsafudin thank you so much
Vue 3 is the best framework out there bar none. So impressed with the Vue core team. They dont nearly get enough praise even with all the praise they get
Did you tried svelte?
Svelte a lot better
@@Smoonwalkerm Heres why I prefer Vue to Svelte. The best thing about Svelte is how simple its API is. Its SFC structure is really clean and you can do a lot in very few lines of code and have those lines of code be very readable. However, with Vue 3 script setup you can basically do exactly the same in vue. Vue with script setup has an SFC structure that looks very similar to svelte and only differs in very meaningless ways.
But unlike Svelte, Vue 3 actually lets you extract that exact API into composable modules that easily lets you share logic between many components without swtiching APIs and while using all the same hooks and reactivity you are used to inside components. In Svelte you have to completley change your API to do that and even when you do youre restricted in many ways which you just arent in vue 3.
This is because Vue reactivity just uses native proxy reflect. Which is why Vue reactivity even works outside of the vue context. This means that vue reactivity is actually framework agnostic. Thats how modular vue is. Yes. You can literally just extract the reactivity out of vue and not use vue, just the reactivity. The actual reactivity of vue doesnt depend on vue. Thats crazy.
And its really powerfull. Because it lets you have basically limitless ability to compose your files and shared logic in whateverv way you want and have it still work. In fact, in vue, even though they have their own stores for state management you can actually just create your own state managment with just using the vue reactivity hooks that you are already using in all your components.
And even if you did swich to the vue stores, pinia is so similar to the regular vue composition api its basically the same thing anyway. This uniformity is super clean and much more composable than anything you can find in either React or Svelte.
For instance, both in react and svelte if you want to share some state only between certain components you would have to wrapp your components in some context. Which is its own thing you need to figure out. In vue 3 you could just do the exact same hooks you have already been using. Put them in their own file and just import into the components that need this.
Like sharing js functions except the functions can use vue hooks and set up their own state thats either instance based or independent of instance. The only thing you need to do to switch between instance based and independent is just wheter or not you put the reactive ref inside or outside the function. Its that dead simple.
It lets you use the same API everywhere and however you want in whatever context you want even as far as to use it outside of vue completley. For this reason I really dont think Svelte is better than Vue. The best things about Svelte can be found in Vue already. And Vue takes that great simple SFC structure. Makes it way more modular and puts it in an ecosystem thats bigger than Svelte. With that, I feel like its hard for me personally to switch over to Svelte
@@samuelmorkbednarzkepler Using proxy is the worst thing you can do. I prefer sveltjs approach for reactivity.
@@mehdikhody What makes you say that using proxy reflect is bad? Vue had the same approach as Svelte in Vue 2. They both used getters and setters. Moving from Vue 2 to Vue 3 all I see are benefits of proxy reflect approach. I haven't had a single issue with it and all I've had is more flexibility and modularity
it took me awhile to rewire myself to think in refs, reactive & composables, but it was worth it 100%
waiting for Vuetify to update my projects to Vue3, which is taking ages :/
You'd better not look up how things are going with v-datatable....
True man 🥺 I waited too long and moved to quasar which supports vue 3 very well 😌
@@_julian rewriting all apps with a different library (like Quasar) takes a lot of time :/
Codebase turning to 'Legacy' after 1 year, is not cool !!
I thought about switching to Tailwind, so it is not depended on Vue updates, but I have 0 experience on it
waiting vuetify for nuxt js
@@amarildo-xyz do it, if you want some components add daisy ui to tailwind
Vue is 🔥
It's still kinda difficult to look out for oppotunities as a 4 years experienced Vue js developer in the subcontinent. Started from quasar and now working in Vuetify. Anyone's suggestions and guidance would really help. to Evan and other team members , Kudos on the future explorations , they really look promising.
Have you seen our Vue Jobs page? There's lots of remote opportunities: www.vuemastery.com/vue-jobs
Quasar already uses Vue 3 and is awesome. I'm glad I gave up on waiting for nuxt and vuetify to upgrade and tried it out.
For a technology who want to be future proof I don't understand why there is not a better support for module federation
Quasar framework needs to get more exposure for Vue developers! It's AWESOME!!!
And we've been on Vue3 for over a year now 😉
@@LukeDiebold true! I built two full fledged apps within a matter of months using composition api and Quasar
@@ecofriend93 awesome!!!
And now that we have Quasar VueAuth it's a joke how easy it is to get started with Supabase, Firebase, Laravel and Strapi 🎉🎉🎉
Want to watch a free Vite lesson by Evan You? ⚡ Access it here: buff.ly/3OxbEi1
That compile time work shiftings are so Svelte. I wonder when we will have official Vue Native?
Or when apple will just give in so we can all ditch the complexity of doing native shit and instead just use PWA
@@samuelmorkbednarzkepler Steve Jobs is passed away. So... that might be took very long time.
Hey, thanks for the great work. Are there any plans to support generic typing for components?
thanks, that was so much useful and informative, I really appreciate Evan for these great informative activities and Vue mastery...
Did you see that we're unlocking all of our courses this weekend only? More info here: www.vuemastery.com/free-weekend
Hope you can make it! 😁
Wow, if the new vdom-less option goes live, I'll think of it as "svelte done right". I'm a Vue dev, but I tried Svelte because everyone said it's faster. Tried it... the community projects is so narrow, the conditional dom {{ if }} syntax just threw me off. I would be too much work to migrate to Svelte, even for a new project. This feature in Vue is a dream come true.
first: Thank you.
second: Wordpress added React in it's core for Block editor. why is not Vue in Wordpress?
maybe ask wordpress
Disappointed with my attempt to use Nuxt 3 (especially compared to Nuxt 2). Couldn't get it to work at all and had very curious behavior. Will wait for the official release hoping it'll fix these issues
had the same bad experience and posted on my facebook. Lots of headaches, errors, bugs. And it's the 2nd time I try it.
Same. I never tried Nuxt 2 but heard all good things. Tried Nuxt 3 and got nothing but errors. I don't even care about SSR but it felt forced and broken. Strange. Back to normal vue3 which I still really enjoy.
@@jdhaines I'm having a good time with NestJS + MongoDB + Mongoose (or Firebase/Firestore) + Vue 3 Script Setup + Vue Router. Used to have Pinia in my stack, but I recently noticed I can do the same with composables. One less dependency.
And I liked GraphQL, but need to practice it more to understand it better, and being able to add it in my stack. Cheers!
I'm looking forward for the `experimental compilation strategy` I think it would be great!
Vitepress has some annoying navigation setup bugs. So sticking with Vuepress for the time being.
No Virtual Dom - I can not wait for it.
Vue js 🖤
It's nice seeing how vue evolve. I love how vue is so newbie friendly but as powerful as other more complicated alternative. Specially with Pinia.
Can someone remove the counter example from the vue3 documentation. It simply doesn't work.
thank you for your informative presentation
nemidonestm shoma vue kar mikonid ya alaghe darid, kheili shoshhal shodm...
@@javadnoroozi5542 تشکر جواد جان بله کار میکنم و خیلیم باحاله برام
i'm a developer so how can i do seo with vue with google search console i use laravel in combination with vue but i can't index google search because it's not spa or ssr
i was wondering long time ago why vue still did not update complator and not remove virtual dom ? I am sure that increasing performance and decreasing bundle size is one of keys to help vue grow up to the moon. Also the mention types inporting in components are really welcomed.
Two things, bootstrap Vue and native support for vue
bootstrap-vue is unlikely to be supported in vue 3. Now that bootstrap 5 no longer need jquery, its perhaps better to use bootstrap without a lib. If you really want to, primevue is an option
is the audio bad or is it just me ?
For those of us who aren't front end experts, what is "full ESM"?
ECMAScript modules
😻😻 Naija Vue fan here
I have a lot of issues using Vue for large applications, not regular widgets or something. Like React and Unlike Angular, it does not give you something beyond rendering. And when you building and application structure, you meet problems accessing resources. I'm using DI for share data between services, handlers, models and components, but it looks uglier as it is in Angular. Maybe there is a solution that may make this simplear. At least like a rule or pattert for interapplication resources communication. Nuxt is greater in this case, but too huge.
I love how Vue works, but this small piece makes me think that Angular is more way practical in use.
Did you try to share data between app parts using Vuex or Pinia?
Vue gives me the easiest time accessing resources out of all the major frameworks I've tried. Pina is awesome and even without pinia composables in Vue 3 give me some of the most flexible logic/state sharing patterns I've ever had the pleasure of using. So. I'm going to have to hard disagree with you there
@ did you read what I've wrote? Resources, not only data. Also, I don't like the way vuex works. Also, I prefer Akita, but long time didn't use, that created something new time ago.
We use primevue instead of vuetify and we realy like it.
i love Evan You
Vue 😍⚡️
If no virtual dom becomes true, it will not only benefit all the existing vue3 app which boost their performance and reduce the memory footprint but also draw lots of new users to use vue for its simplicity.
some one send him a better microphone
I'm a little bit disappointed because the sample code in doc is still vue 2 currently. That will slow down new people coming to learn vue 3
Right now the Vue eco system is just not stable and all the tools to be used in production are just not there yet.
Like what? All the tools im aware off have been updated for vue 3. The vuedevtools are upto date. Vue router has been ready for a long while. Vuex is uptodate. And the new Vue 3 composition API even lets you do shared component state without any state managment library if you want. Also most libraries are updated now. Nuxt 3 is in release candidate and pretty much ready for production according to the authors of Nuxt. Only library thats lagging behind is vuetify and even that is in beta release now. Though honestly i dont get why people get so stuck on component ui libraries. If thats a consern then move over to something like tailwind and never worry about it again
@@samuelmorkbednarzkepler Nuxt is definitely not ready for production use yet, just because you can start up a nuxt server and a RC is out does not mean its ready, what about nuxt auth looks like that is still a long way to be release so, are you going to build an app without the desired auth tool for nuxt? Most of us love vuetify but that is still along way, there is hardly any docs for vue 3 and composition api. These are libraries that make a huge difference to be honest and alot of people will migrate to other projects like react because of this limitation in tooling and great backing from facebook. Just saying in my experience now with vue 3 l've been hitting a lot of bottlenecks.
@@100kshooter5 We are using Vue3 ever since it was in beta. Granted we have developed our own core tools and UI library, but we also placed the bet on Nuxt3 very early on. Auth? What about it? Is it hard to build one by yourself?
@@100kshooter5 Depends on whether or not you need auth, most apps don't tbh. But fair enough, I understand that nuxt auth isn't there yet and that might be an issue for some. Though to be fair, there's no reason why you should be bound to nuxts own auth system. You could build your own or use any of the other alternatives out there to help you out. The reason I said nuxt 3 is basically ready for production isnt just because you can start up a nuxt server though. Obviously that would be a dumb thing to say. The reason I said that nuxt 3 is basically ready for production is because that's what one of the core members of nuxt said.
Also I understand that lots of people like vuetify but honestly I think people need to move on cause if its stopping you this bad then i feel like its not really serving you as a library and people need to start considering switching vuetify out for something a little more flexible.
Nuxt 3, by comparison, took a while because they wanted to take the opportunity with vue 3 to also rewrite their own stuff. And they have a lot of custom stuff to manage. That's why we have cool things like nitro now. Nuxt 3 would probably have been stable and released ages ago if all they where going to do was just make it compatible with vue 3. Because Vue 3 really didn't have that much in terms of breaking changes at all. That was one of the impressive things about it. All this time is mostly going to these library authors doing a bunch of other shit in their reworks besides just getting compatible with vue 3.
I think its a good thing Nuxt 3 took the opportunity to really do some legwork on their own code at the same time though. Ultimately it will mean that the Vue 3 ecosystem will be in a really modern state pretty soon. The fact that in this same timeframe vuetify, which is just a ui component library, is still lagging behind is a bit troubling however. But that's a vuetify problem not a vue problem and I don't like the fact that the entire ecosystem can be held hostage by a single ui component library. For me I think this is a sign that maybe there's a lot of us that need a good kick in the ass to get off vuetify.
I heard quasar is good, and they got on vue 3 relatively quickly, if you insist on having a vue specific UI component library. But honestly you're better off with something like tailwind cause its less of this mess to deal with. Its framework agnostic. And its much more flexible. And I personally even think tailwind is too restrictive.
Really I just don't even like ui component libraries to begin with, and definitely not framework dependent once. I feel that frontend developers would be better served taking full control and building their own components foundations. Half the time when I use ui component libraries I spend most of my time trying to overwrite the shit the component libraries wrote. Which makes me feel like ui component libraries are mostly for backend devs who are sort of moonlighting as frontend devs and really just want a quick way to get a nice looking form or something. I feel the same way about CSS frameworks.
You might disagree with me on that though and that's fine. I understand how you can reasonably differ from me on those subjects. But here's where you just completely lose me though: "there is hardly any docs for vue 3 and composition api." The new Vue 3 docs have been out for a few months now. They go over composition API really well. And frankly, even before that there was plenty of info on it around. I started building with the composition API almost right off the bat when vue 3 was officially released and I've hardly had any problems solving issues in it. You could argue that there was a period before the new docs where the docs where a bit messy about this but that's just not true anymore at this point. The new docs are very much there and in good shape now
Basically you all agreeing with me that the tooling isn't ready but want to shave it down my throat, every suggestions is mentioning putting in extra work in writting my own tooling etc the problem is its not going to fly explaining that to business stack holders, that we need another month to write our own auth because the one we used in vue 2 is not ready yet, unfortunately in our case its not feasible. Alot has been put in to the apps to just make these decisions you suggest here, for small apps yes of course write your own auth and no worries about security. But there is a lot to consider and l still say for me the tools are just not yet there.
Vuetify need to update to Vue 3 asap
vuejs creator tells about future of vue, of course he will mean that vue is almost the ultimate meaning of life.
vue and vite are amazing but nuxt release timing is embarrassing
nuxt compare to next is garbage
In my opinion, solidjs is the best frontend framework for now. It has almost the best performance and smallest bundle size and react like syntax. You even can't imagine better than this.
Who are the Vue 2 users? 😆
15:30 vue experimental new compilation strategy == same strategy as svelte: throw away the Virtual DOM and try to compile *.vue to *.js (similar to compile *.svelte to *.vue)! I wish to see it comes true!
It's going to be quite lit🔥🔥 Excited for that.
Eventually all frameworks will transition to compilation time DOM mutations. Virtual DOM is dead.
Is just a matter of time and all frameworks will move on that, is just faster.
希望能为Java SpringBoot有相关的技术支持!
Evan Me?
SvelteKit : "Let me introduce myself"
its because of seeeing this video , that i decided not to use Vue3... since it will be undergoing another big change to become like Solidjs, really don't want to go through another majar migration afterwards ..
Can anyone name three original Vue features? I'm not trolling. Not looking for an argument. I'm not even a JavaScript guy. It's a genuine question. Anyone?
Why be original? Vue is taking best of angular and react into one piece
@@yanntiersen2217 It's a legitimate response. So, here I am at the home of Vue - as far as RUclips goes - and nobody can give me three original features. That is astonishing. How about one feature? Is there one single unique feature? Anyone?
None of these frameworks have original features. Svelte doesn't. Solid doesn't. React doesn't. They all do cool new things but they all do some version of things that have been done before. Measuring frameworks in a matter of "how many original features" they have is a meaningless way to evaluate. Vue's best value proposition from the start was to allow you to write very readable and easy to setup SFC components. But SFC isn't really new. Vue just did it better and simpler than what you could in Angular.
You could make the argument that Vue 3 is the only framework among all the big frameworks that use proxy reflect for its reactivity system instead of getters and setters. So that could be one "original feature." Which is why Vue 3s reactivity system is much more modular and reliable. So much so that you can even use Vue reactivity outside of Vue, because the reactivity itself is actually framework agnostic. In fact you can use it without any framework if you want. But reactivity isn't a new "original feature," and neither is proxy reflect. And there's probably some other framework out there that did it before. Just not the way Vue did it with its SFC convenience and ecosystem attached.
All these frameworks just take things that have been done, improves upon them in different ways and then puts it all together in different combinations. Its that combination and quality of features that matter. Not whether or not one framework was the first one to do it. That's like looking at a series of battleships and then asking "yeah, but can you name 3 things that battleship did first?" No. Probably not. But that doesn't mean that your very original wooden kayak with feather wings is better.
So, if I was forced to give you a potential answer, probably Vue composable, Vue framework agnostic reactivity, and the Vue SFC which I think are all original in the sense that nobody else had done either of those things the way Vue does them before Vue did it that specific way. But ultimate it doesn't matter and we could probably argue till we run out of oxygen about what counts as an "original feature."
@@samuelmorkbednarzkepler You offered Svelte as an example of a framework that doesn't have an original feature. Now, I am not completely in touch with the JavaScript universe but - as far as I can tell - you could not have chosen a more innovative framework. Before I humour your bullschitt about reactive, let's REALLY focus on this. Your tactic of throwing schitt at the wall to see what sticks is hereby REJECTED.
So, let's take each point you've made ONE AT A TIME. Are you seriously telling me that Svelte brings nothing original to the table?
Once we've dealt with Svelte, we'll move onto React.
As a sneak preview of what's coming up: I think React Native is arguably one of the most astonishing and innovative features in all of web development. So again... you really screwed up by choosing what are arguably the two most innovative frameworks in all of web development.
So... would you care to elaborate on why you think Svelte brings no original features to the table?
That might just be one of the most outrageous claims I've heard in a very long time.
@@davidconnelly Alright. So in other words you completely missed the entire point and now want to do some sort of keyboard battle with me about whether or not I can find examples of what svelte does elsewhere prior to Svelte? okay...
Svelte does a really clean version of SFC. That's what is cool about Svelte. But SFC has been done before. In both Vue and Angular. Just not the same way Svelte does it. Which is great. But is that an "original feature?" That depends on how you look at it, which is my entire point.
Svelte also doesn't use a virtual dom. That's also very cool but obviously the idea of compiling to JS isn't even remotely new. In fact arguable virtual DOM is newer than that. Its just that Svelte looked back and thought that maybe it was better to not do virtual dom. And that was a great idea. Very innovative. But was it completely original? Maybe in the way they did it for the package they had but you could easily argue that it had been done before. Does that make it less innovative? no. Of course not. Just the same as Vue has a lot of original ideas in the way they do it for the package they have and that's the point. Where you put that arbitrary line of "this is original" is sort of meaningless. Real innovation is in the package, quality, simplicity. Not whether or not literally nobody else have ever done anything similar to X thing.
Talking bout react: React brought us JSX. Which is cool, but the idea of mixing JavaScript and html also isn't new. Just nobody had done it that way before react. React native is not the first to compile their frontend code to native code. Before react native there was electron. And you can do the same in Vue using something like capacitor. React is just the first one to do it in their specific way where they specifically have a thing that's only for react. From one angle you could argue these are original features, from another angle you could argue they are not. That's my point. Its the same with Vue. If react native is an original feature then so is Vue 3s reactivity and the idea of using proxy reflect instead of getters and setters. If you where to say "reactivity has been done before" I would say "yeah, you're right. So has compiling to native code or JavaScript."
But in any case, If you disagree so hard shouldn't you be the one to provide example here and not me? Its like you come right out of the gate with all these strong assertions and then just give the ball back to me to go digging for points in your favor for me to discuss.
And none of this is even what my point was. My point was exactly that we can argue about what counts as original forever but ultimately none of that matters. All this is meaningless. Whether or not something is "truly original" is not what powers real innovation. Some of the most innovative things ever done are just improvements on something that already existed. Ergo, vite, vue, svelte, react.
Its difficult to put a line down and say "this is truly original," and we could argue forever about what that even means but ultimately it doesn't even matter cause innovation is more broad than that. That's what my point originally was. And you just skipped all that and jumped straight to "yeah, but forget the nuance lets argue anyway." I'm not that interested dude. I'm not going to do this weird keyboard warrior thing with you all night. At this point I've already wasted more time on this then I should and you don't seem like a particularly nice person to have this conversation with anyway
I prefer svelte
too bad the svelte devs knee capped themselves with sveltekit. part of the allure of svelte is its no-nonsense simplicity and intuitiveness. sveltekit is anything but that.
vite is NOT production ready.
Vite is very production ready
Staying with Angular. It's just a better framework.
How?
Nice joke
@@yanntiersen2217 First of all it supports everything that you need for building SPA out of the box. No need to download additional packages for simple things such as routing. It separates files based on their type unlike React and Vue where you throw everything in one file that makes everything unreadable. Another thing is modules which makes the app super easy to organise unlike Vue React where 90% of the time you and up with an architecture that no one knows how to maintain. RxJS and reactive programming is another reason for choosing Angular. It makes handling of async data super easy unlike promises ans async await. And the most important one. If you worked on an Angular project you can switch to another Angular project in like 5 minutes. With React and Vue you need an onboarding and documentation for every decision the team did before.
@@theanswer1993 if so why the hell you watch videos about vue?
@@theanswer1993 First of all RXJS is not part of Angular, but is a dependency of Angular so your is all built in is not true, then, async await is difficult? better you come back to the basics of js then, RxJS is not beginner friendly as well, working with streams is something that a beginner would never get, Vue is just more beginner friendly and the learning curve is small compared to Angular. Also tell me why in 2022 i need to have for each component at least 4 files. Come on, stop with this bs of "Angular is better because..." just because Angular devs refuse to try out other frameworks. An app you could make in a week, with Angular you take a month, too much boilerplate, not beginner friendly and slow, and btw i don't use Vue but React but a supporter of Svelte.
Vite vue and nuxt. None of it works properly. Patchey buggy frameworks.
Or maybe your brain is buggy
These all work more reliably for me than any alternatives like react, webpack, next. And im not hating on any of them. But to say that vue, vite and nuxt are buggy frameworks is just dishonest
Vite with React and Tailwind works amazing in my experience.
@@samuelmorkbednarzkepler then you're doing something wrong tbh
@@sasca854 I really don't think I am but I'm also not sure how I'm supposed to respond to such an amorphous accusation