-
Notifications
You must be signed in to change notification settings - Fork 498
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v3 #1289
Comments
I would like to help, if I'm able to. Is there going to be a dedicated branch or will it be done in the |
Once we start this, there will be indeed a new branch with auto-release so we can try it out and especially keep working on the |
I have few design ideas if you are open to this I would like to share it for the future of Nuxt UI 3. Should we discuss this in this issue or it'll be better to discuss design ideas in seperate discussion thread? |
@jd-solanki You can share them here! |
Since it is supposed to be a refactoring to all components, could we give the possibility of compatibility with unocss? |
@sawa-ko It will be made with Tailwind v4. To what end would you make it compatible with Uno? |
I've started working on this in a private repository of mine, I'll open-source it once I'm satisfied with the base so you guys can check it out 😊. A lot has changed since I'll post regular updates on this issue. |
Please tell me how long it will take for this upgrade to be available. |
I have no idea how long it will take and it's not entirely up to us, I hope to release it at the same time as the official release of Tailwind v4. |
That's awesome. The new version of nuxt-ui uses exactly the tech stack I expected. I tried to build my own UI library using radix-ui and tailwind-variants, but I immediately found that even with radix-ui, it is not easy to build a full UI library. But I got an idea with an API that works with any design language. If you are interested, here is my demo repository: |
@robin-dongbin It's already in the making. There are already 13 components done, 36 more to go 😅 |
Since the component library is based on radix-ui without styles, I thought it would be nice to provide an api that is abstracted from various design systems, so you can switch styles from one system to another at any time. If people want to implement another design system, they can just customize it, share files, or even contribute to a repository. Taking things a step further, it is possible to switch between different design systems at runtime. Of course, I'm just offering an idea, and if you think it's too late, that's fine |
This is actually already what we're doing with the App Config. You can customize the classes for every part of every component. |
Thanks for the work! Just one question :
|
No we keep the For example the export default {
base: 'inline-flex items-center justify-center text-gray-900 dark:text-white',
padding: 'px-1',
size: {
xs: 'h-4 min-w-[16px] text-[10px]',
sm: 'h-5 min-w-[20px] text-[11px]',
md: 'h-6 min-w-[24px] text-[12px]'
},
rounded: 'rounded',
font: 'font-medium font-sans',
background: 'bg-gray-100 dark:bg-gray-800',
ring: 'ring-1 ring-gray-300 dark:ring-gray-700 ring-inset',
default: {
size: 'sm'
}
} Here is the new version: export default {
base: 'inline-flex items-center justify-center text-gray-900 dark:text-white px-1 rounded font-medium font-sans bg-gray-50 dark:bg-gray-800 ring ring-gray-300 dark:ring-gray-700 ring-inset',
variants: {
size: {
xs: 'h-4 min-w-[16px] text-[10px]',
sm: 'h-5 min-w-[20px] text-[11px]',
md: 'h-6 min-w-[24px] text-[12px]'
}
},
defaultVariants: {
size: 'sm'
}
} This is a breaking change if you've overridden its config in your |
Ok ! Effectively, it's a breaking change but it seam ok for the future to have a better granularity with the variants. Thanks for the explanation and the example 🙏🏻 |
Ah sorry yes, I am.
|
@benjamincanac do you think it makes sense to already upgrade to reka-ui (radix-vue renamed itself with 1.0)? |
@onurusluca Please open a bug report using: https://github.com/nuxt/ui/issues/new?template=bug-v3.yml. This issue was mostly made for news. |
Hi @benjamincanac! looking forward to v3! Have the |
Is there a stackblitz or codepen template we can test the v3 with? So that we can use it on reproductions etc. Tried to create one but getting some errors: Looks like a stackblitz and tailwind v4 problem: |
Hi @onurusluca, yes currently Tailwind CSS cannot be used on stackblitz, as you have seen they are working on a compatible layer. We just need to wait for that. About the But please, this one free from issues and other discussion. If you need further assistance feel free to tag me in a new issue or on the Nuxt's Discord server |
I would also appreciate if this issue is now for general v3 discussions/status and not for issues and individual problems. |
Well, I saw that Radix Vue released a v1.0.0-alpha.1 with a new name (Reka UI). It's interesting since the library is currently at v1.9.7. This update has already been discussed in #409. https://github.com/unovue/radix-vue/releases/tag/v1.0.0-alpha.1 So, the alpha version is official. Are there any plans to start testing this new version in Nuxt UI v3? |
See #2259. :) |
will other components (i.e. Tree, Editable, etc.) from radix-vue/reka-ui be wrapped into NuxtUI components? |
@Type-32 The plan is to wrap most of them yes, see https://github.com/nuxt/ui/issues?q=is:issue%20state:open%20label:feature%20label:v3. I'm thinking of building an actual DatePicker as well! The first goal is to implement the same components as Nuxt UI v2, once it's done we'll start implementing new ones 😊 |
I’d like to suggest adding the ability to configure all props dynamically, rather than being limited to defining only |
Apologies if it's been answered already, but what's the plan for Nuxt UI Pro? |
@rigtigeEmil it has been answered multiple times above, some of them being:
and:
|
Thank you for awesome work. However please add ToogleGroup component: https://www.radix-vue.com/components/toggle-group |
@benjamincanac |
Do you know why I have this error with " npx vue-tsc --noEmit" :
On all my modules:
|
Can we have an even darker theme? |
@benjamincanac This is a great idea to me for many reasons. There are issues with current v-calendar version. Avoiding to rely on external dependency for such an important component should help with code robustness, styling consistency, and component performance. |
question about the development process: nuxt ui pro depends on nuxt ui... if you are using nuxt ui v3... that means that they are radix based. while nuxt ui pro still looks to be on ^2. is the pro being worked on as well ? will they be released together ? |
@orenmizr Nuxt UI-Pro also has an alpha release, as explained above #1289 (comment) (please do note that not all components have been rewritten, yet)
|
@MrHBS you can go as dark as: <style>
@import "tailwindcss";
@import "@nuxt/ui"; /* or @nuxt/ui-pro */
.dark {
--ui-bg: var(--color-black);
}
/*
Or if you want it also for the light theme
:root {
--ui-bg: var(--color-black);
}
*/
</style> |
Hi all. Not sure if this has already been answered. Is Nuxt UI 3 going to be backwards compatible while we can upgrade to the new v3 components? |
No. |
it makes sense. the move from headless to radix is a good move. i hope that project will continue to create powerful and accessible primitives. ui 3 should be a lot better as a whole. incredible work 🙏 |
Btw guys Radix Vue v2 is coming and they are planning a rebranding. It will be called Reka UI. I think Nuxt UI v3 should wait for this update too? Alpha version has already been released: https://reka-ui.com Changelog: https://github.com/unovue/radix-vue/releases/tag/v1.0.0-alpha.1 |
The development is ongoing on the
v3
branch of this repository: https://github.com/nuxt/ui/tree/v3.A lot has changed since
@nuxt/ui
was made open-source (May 2023), so the plan here is to rewrite every component from scratch alongside their config.I'll post regular updates on this issue and on https://twitter.com/benjamincanac.
Overview
radix-vue
#409 which should solve allv3.0
issuesuseUI
for https://www.tailwind-variants.org/Documentation
https://ui3.nuxt.dev
Breaking Changes
The biggest change is the switch to
tailwind-variants
, this will cause lots of breaking changes if you've used theui
prop orapp.config.ts
to override the config. I apologize in advance for this but I strongly believe this will be beneficial and will bring consistency across all components.The config will now have a
slots
amongst other keys that will specifically target dom nodes. Theui
prop will only allow you to target those slots.These changes alongside the refactor of all components will also improve the types, the
app.config.ts
andui
props are now perfectly typed, as well as all componentsprops
,slots
,emits
andexpose
.Components
The text was updated successfully, but these errors were encountered: