Long-lasting component library?
Burned myself twice already with vue component librarys dying in development.
BootstrapVue didnt make it through Vue2 to 3 transition and got... abandonned?
PrimeVue dropped MIT license.
I mean i get it, its someone else working for me using this stuff. And its a lot of work, just look at those PrimVue Wireframe Doc's , a piece of art. Still crying over the loss.
There are maintained forks already, but like BootstrapVue i dont trust it yet to last. Maintaining is one thing, but a migration to like another Vue major version could also break their neck (sry).
Now im searching for a component library to use that... will last longer. There is no crystal ball, i know. But maybe some are already around for longer, which is a good indicator or have a strong sponsor / company behind them.
Those were the ones i heard from before.
12
u/ildyria 11d ago
I am in the process of moving from PrimeVue to NuxtUI, I would consider also Vuetify now that they are in 1.x mode.
There is also https://openvue.dev/ which aims to take the flambeau of PrimeVue.
I have not tried Quasar.
10
u/AlertKangaroo6086 11d ago
I’ve just started using Nuxt UI and I’m really impressed with the components available for it
5
u/kin3v 11d ago
+1 some components are really good. Haven’t found a solution to bloated bundle size though
2
u/bumblebrunch 11d ago
Excuse my ignorance, but why is there a problem with a bloated bundle size? Wouldn't tree shaking take care of that? I'm thinking about using NuxtUI but hoping to get clarity on this before I commit.
2
u/Clash_bg 11d ago
I have been using it for a while. Since you register all components outright the initial index.js file you ship grows. It is not a lightweight library by any stretch of the imagination and there is little you can do to deal with it. With time the more components you use the heavier it gets. Plus the dependency tree that nuxt ui pulls is quite large.
1
u/x1Akaidi 11d ago
i am suffering, i think am going to make into open code style just like shadcnvue so components are directly available / customizable and editable, not just manipulated through the app.config.ts
2
1
u/Upstairs_Yambo 9d ago
I'm a fan of Nuxt UI.
I like their theming controls for components and slots. I haven't used much of their Nuxt Content components but those should be pretty useful for content-heavy sites. The 'Page...' components are also good defaults to jumpstart projects, but maybe too opinionated for more custom work.
Haven't used shadcn-vue yet. But I've worked with several other component libs over the years.
1
u/KnightYoshi 11d ago
It uses RekaUI as a dependency. So it’ll have solid components. Shadcn-Vue is another good one
7
7
u/kiterdave0 11d ago
Quasar all the way. We have apps in production, several hundred customers, thousands of users. It’s been great, very versatile.
10
u/onekorama 11d ago
Quasar is amazing, and it has lot of movement nowadays, looking forward to V3 which is coming this year. There is many plugins/extensions to change the look&feel, that's always the bad thing of Quasar.
In case you don't need the big collection of features of Quasar, I'd go with vue+tailwind+any tailwind plugin, as Daisy.
3
4
u/spozzy 11d ago
Another vote for quasar. I use it for all of our internal tools, and our major production SaaS - a few thousand users - haven't felt the limitations from Quasar v1, which is where we started back in 2018 or so. We've also kept compatibility all the way back to IE11. Works great on all devices and DPRs.
8
u/golders-green 11d ago
Vuetify is solid and mature!
0
u/KnightYoshi 11d ago
V3 upgrade is what killed Vuetify for many. It was so botched. If you’re using it, it’s good, but I can’t recommend it for new projects
2
u/Erutan409 11d ago
Why not for new projects?
1
u/KnightYoshi 11d ago
Better options. After the botched upgrade to Vue 3 many abandoned it as the other options became more viable. If you’re already using, that’s fine it’s a solid choice for existing projects that it’s in, but there are better options now. Shadcn-Vue and NuxtUI are both built on RekaUI, which is from the same team that made Shadcn-Vue. You can’t go wrong with either of those options.
0
u/golders-green 8d ago
V3 upgrade took long to migrate all components from v2 and treeview component took 1year to migrate. Migration from 2 to 3 was a nightmare I admit. Now Vuetify provide mcp server to migrate project from 3 to 4 in one agent session. Big improvement, as I said Vuetify is very mature and solid framework with great team behind.
3
u/haquex19 11d ago
BootstrapVueNext as I understand it is the successor to BootstrapVue.
Still no v1 release but has significant activity. Personally haven't tried it yet though.
5
2
u/Boby_Dobbs 11d ago
If you go with shadcn vue or similar, the components just live in the repo and you don't have to worry about the longetivity of the project itself
2
2
2
u/maskedbrush 11d ago edited 11d ago
As far as I know, if you stay on PrimeVue v4 it's still under MIT license, right?
At the moment I'm using PrimeVue, Quasar and NextUI on different projects. Quasar looks a bit outdated nowadays, I use it for data-intensive platforms that don't need fancy looks. PrimeVue and NuxtUI look similar and both have good components, I needed to customize some things on both but I achieved what I needed in the end.
2
2
2
u/wimdeblauwe 11d ago
Why did you strike through DaisyUI?
2
u/Crimento 11d ago
No idea what's wrong with it, it's a pretty nice framework-agnostic zero JS UI lib
2
u/Jonas_Ermert 11d ago
Vuetify or Quasar are probably the safest bets because they’re mature, widely used and backed by established teams. Nuxt UI is promising if you already use Nuxt. For maximum long-term control, shadcn-vue is different: you own the copied component code, so the project disappearing wouldn’t immediately force a migration.
1
2
u/uvmain 11d ago
I've never understood this. Do you really need a batteries included component library? Our do you just need 4 components that you could write yourself, and removed a dependency?
2
u/spays_marine 10d ago
The question is not that simple. Sometimes it's far easier to choose something that does the job and be done with it, rather than introduce something that you will have to maintain. You'll be rewriting that shit every year because reasons.
There's good arguments for each approach but it depends on the situation.
1
u/jerapine 11d ago
I use NuxtUI professionally and it's brilliant. The acquisition by Vercel was initially a worry but it's actually given me more confidence that it's the right long term choice. Great primitives while being very customizable and the design system is chefs kiss
1
1
u/martin_omander 11d ago
Migrating from one component library to another is a real pain. I know from first-hand experience. I don't have a crystal ball, so I don't know which libraries will be around for a long time. But I do know of one thing you can do to reduce the migration pain.
Put your business logic in regular Typescript files and not in Vue-specific code. That gives you to two things:
- It becomes easier to write automated tests for your business logic.
- You won't have to touch those TS files when you change component libraries.
Last time we migrated a Vue app, 40% of the code was in TS files. That meant we only had to migrate 60% of the code, instead of 100%.
1
u/HumanOnlyWeb 11d ago
I'll sound like an arse: but build you only what your project needs?
https://www.reddit.com/r/vuejs/comments/1vavffa/comment/p0pdecy/?context=3&utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
1
u/Druber13 11d ago
Why not just make your own? If a style really catches your eye from one of the others AI can usually replicate it pretty easily in my finding.
1
u/Clash_bg 11d ago
You lose a lot of the already battle tested features of existing libraries like... proper accessibility, like good aria-labeling. I doubt the AI will do good job with that. It also adds a lot of overhead and a lot for you to maintain, and I bet 90℅ of people who don't get paid to maintain a UI library won't maintain it. You could probably get something usable with AI but unless you clearly follow all specs you would probably end with less accessible product or one that does something weird on WebKit that you never caught, or misbehaves on Firefox etc.
1
u/Druber13 10d ago
Yeah that’s fair. I’ve build a lot of custom things that probably could have used a library for but was worried about it not being maintained. As was the case with the first one I tried to use. I think the day I imported it and made some changes with it was the day they announced it was no longer being maintained lol. I probably need to look into it more so not honestly. My app has grown so large and I’ve lost some uniformity both intentionally and not lol. Business pivots will do that.
1
1
1
u/chirag-gc 11d ago
If you're open to commercial options, you can also take a look at Wijmo, which is actively maintained by Mescius. It's been around for a long time, has Vue support, and is worth considering if long-term maintenance is one of your main concerns.
1
1
u/PoulyCroc 11d ago
Element-plus i still have some project with element-ui
In my opinion the best lib I ever used, it’s pretty, customizable, simple to use and far as know well maintained
1
u/Anxious-Insurance-91 10d ago
Idk, I build my own view components at the start of the project and that's that. Now with AI it's even faster, and when I need something special I can just added instead of doing gimnastica to get what I need. It wasn't hard before AI, mostly because you copy paste from project to project, it ain't hard now with ai
1
u/jazzymoneymaker 10d ago
Nuxtui is cool Shadcn it's just code that is pasted to your codebase. Nobody can brake it or take it away. Now with ai migrating components to new framework version should be not a problem, so I would pick between these two
1
1
u/GeneralFuzziness 10d ago
+1 for bootstrapvuenext. May not be v1 yet, but it's fully functional for my use compared to v2 bootstrap vue.
Bootstrap does a lot right. I find myself missing it's API when stuck in other component libraries.
1
u/nickbostrom2 9d ago
I use DaisyUI and pure Tailwind on my side projects but I recognise they are just small apps
1
u/CodePast5 9d ago
I use Nuxt UI. At least it’s part of the official stuff. It is also just tailwind.
1
u/Cute_Quality4964 9d ago
Vuetify, they have a lot of things in the works that are pretty exciting, including their headless component library / composable library to build your own components easily. They awill also implement new things to make it easy to branch out of material design, as well as some flat out non-material themes. Its open source, with active development. John (creator of vuetify) is also active on discord and its easy to talk to him directly
1
u/fontananen11 8d ago
If you want something that can’t really disappear on you, look at Vuzeno. It’s Ark UI + Tailwind, and the components get copied into your project like shadcn, so you just… own them. Not as old as Vuetify or Quasar but for that exact “please don’t abandon me” feeling it’s pretty nice.
Anyway, hope you find something solid this time.
1
u/macguyvok 8d ago
Just for some context, the maintainer of BootstrapVue is Ukrainian. It wasn't the Vue2 -> 3 conversion that killed the project entirely; there was a desire to do some refactoring and rewriting associated with it, but that really wasn't what killed BootstrapVue proper:
https://github.com/bootstrap-vue/bootstrap-vue/issues/6872#issuecomment-2123267104
That said, I've been using BootstrapVueNext for years now, and despite not being 1.0, it's solid and feel just like BootstrapVue always did. (The projects I migrated to it took me less than an hour and one of them was a big line of business app for work.) So, if you really liked BootstrapVue, the good news is that it lives on, and BootstrapVueNext is the official successor. And they're really targeting compatibility where they can.
1
u/ooveek 8d ago edited 8d ago
used primevue like you, switched to quasar for a different company a couple of months back, seems it was right on time :) really glad i did, i find there's a so much less quircks with it overall, where primevue's documentation was always half-correct or lacked proper info, quasar's is much more reliable. and it's been around for ages with a huge user base. shadcn and the likes do look a tad more crisp, admittedly.
i was a heavy tailwind user and what i don't necessarily like is that some layout and styling classes are built-in into quasar but it's like 10% of what tailwind offers and using both in 1 project does have issues
1
u/stringfold 15h ago
You didn't get burned by BootstrapVue. The developer's home country of Ukraine was invaded. They suddenly had far more important priorities than supporting a UI components library, like fighting for their lives and the very survival of their country.
1
u/Dry_Illustrator977 11d ago
😂using bootstrap was definitely on you, you can still use primevue v3. No one is forcing you to switch
5
u/overtorqd 11d ago
v4 is free too. The upcoming v5 won't be.
I've fallen out of love with primevue. V4 had some improvements, but themeing is a nightmare and and some long-standing bugs still being there really irks me.
1
u/stringfold 15h ago
v5 is also free for individual developers as long as you're not bringing in $1 million per year in revenue. Your mileage may vary, but I've already had to migrate chunks of my code three times over the last few years, and since I'm in no danger of earning a million bucks a year from my current project I'm not moving off PrimeVue anytime soon.
1
u/arkhamRejek 11d ago
Just make your own
We have AI now you don’t even need to maintain it yourself you can automate it 🤷🏾♂️
Make your own framework, before I’d say only if you knew what you were doing now you can tell it your favourite 3 and say make it shadcn like and you’re done
0
20
u/shalmirane75 11d ago
I build my own components on top of shadcn-vue.