Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
dc28907
chore(deps): bump vue-sfc-transformer + mkdist
benjamincanac Sep 16, 2025
5456b8c
fix(Progress): improve `status-position` when 0 (#4994)
HugoRCD Sep 16, 2025
6a8df9b
docs(dropdown-menu): add trigger content width example (#4872)
jd-solanki Sep 17, 2025
d4e3d5d
fix(CheckboxGroup): proxy generic to emits
benjamincanac Sep 18, 2025
4e7e558
fix(InputTags): add blur and focus event handlers on input (#5007)
genu Sep 18, 2025
dadd0fd
chore(scripts): publish with `--no-tag`
benjamincanac Sep 19, 2025
a64e180
fix(types): allow arbitrary keys in tv config (#4992)
J-Michalek Sep 19, 2025
bfe216d
fix(Tabs): use nullish coalescing on item value
benjamincanac Sep 19, 2025
1357845
docs: move to `ui3.nuxt.com`
benjamincanac Sep 19, 2025
266b85b
fix(CheckboxGroup): proxy generic to emits
benjamincanac Sep 18, 2025
00d56a5
fix(InputTags): add blur and focus event handlers on input (#5007)
genu Sep 18, 2025
402fb10
chore(scripts): publish with `--no-tag`
benjamincanac Sep 19, 2025
731ef62
fix(types): allow arbitrary keys in tv config (#4992)
J-Michalek Sep 19, 2025
fc71cc3
fix(Tabs): use nullish coalescing on item value
benjamincanac Sep 19, 2025
a3fc9ca
chore(deps): bump vue-sfc-transformer + mkdist
benjamincanac Sep 19, 2025
a86ec93
Merge branch 'v3' into docs/v3-prepare
benjamincanac Sep 19, 2025
82dc119
up
benjamincanac Sep 19, 2025
e2163eb
up
benjamincanac Sep 19, 2025
decee6b
up
benjamincanac Sep 19, 2025
7c06ac7
Merge branch 'v3' into docs/v3-prepare
benjamincanac Sep 19, 2025
5e55162
up
benjamincanac Sep 19, 2025
c2060b1
up
benjamincanac Sep 19, 2025
a0491ef
Merge branch 'v3' into docs/v3-prepare
benjamincanac Sep 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ body:
attributes:
label: Package
options:
- v4.0.0-alpha.x
- v4.x
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The documentation URL in the bug report template still points to https://ui.nuxt.com but should be updated to https://ui3.nuxt.com to be consistent with the v3 documentation migration pattern.

View Details
πŸ“ Patch Details
diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml
index 3950957f..59a35d00 100644
--- a/.github/ISSUE_TEMPLATE/bug-report.yml
+++ b/.github/ISSUE_TEMPLATE/bug-report.yml
@@ -5,7 +5,7 @@ body:
   - type: markdown
     attributes:
       value: |
-        Before reporting a bug, please make sure that you have read through our [documentation](https://ui.nuxt.com/) and existing [issues](https://github.com/nuxt/ui/issues?q=is%3Aissue%20is%3Aopen%20sort%3Aupdated-desc).
+        Before reporting a bug, please make sure that you have read through our [documentation](https://ui3.nuxt.com/) and existing [issues](https://github.com/nuxt/ui/issues?q=is%3Aissue%20is%3Aopen%20sort%3Aupdated-desc).
   - type: textarea
     id: env
     attributes:

Analysis

Bug report template uses incorrect documentation URL

What fails: Bug report template in .github/ISSUE_TEMPLATE/bug-report.yml line 8 links to https://ui.nuxt.com/ but project configuration specifies https://ui3.nuxt.com as the canonical documentation URL

How to reproduce:

  1. Check line 8 in .github/ISSUE_TEMPLATE/bug-report.yml - shows [documentation](https://ui.nuxt.com/)
  2. Check package.json homepage field - shows "homepage": "https://ui3.nuxt.com"
  3. Check docs/nuxt.config.ts production site URL - shows url: 'https://ui3.nuxt.com'

Result: Bug report template directs users to ui.nuxt.com while project's canonical URL is ui3.nuxt.com

Expected: Template should use the same documentation URL as specified in package.json and docs config for consistency

- v3.x
- v2.x
default: 1
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ body:
attributes:
label: Package
options:
- v4.0.0-alpha.x
- v4.x
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The documentation URL in the feature request template still points to https://ui.nuxt.com but should be updated to https://ui3.nuxt.com to be consistent with the v3 documentation migration pattern.

View Details
πŸ“ Patch Details
diff --git a/.github/ISSUE_TEMPLATE/feature-request.yml b/.github/ISSUE_TEMPLATE/feature-request.yml
index ff895694..576e7921 100644
--- a/.github/ISSUE_TEMPLATE/feature-request.yml
+++ b/.github/ISSUE_TEMPLATE/feature-request.yml
@@ -5,7 +5,7 @@ body:
   - type: markdown
     attributes:
       value: |
-        Before requesting a feature, please make sure that you have read through our [documentation](https://ui.nuxt.com/) and existing [issues](https://github.com/nuxt/ui/issues?q=is%3Aissue%20is%3Aopen%20sort%3Aupdated-desc).
+        Before requesting a feature, please make sure that you have read through our [documentation](https://ui3.nuxt.com/) and existing [issues](https://github.com/nuxt/ui/issues?q=is%3Aissue%20is%3Aopen%20sort%3Aupdated-desc).
   - type: dropdown
     id: package
     attributes:

Analysis

Documentation URL inconsistency in feature request template

What fails: The feature request template in .github/ISSUE_TEMPLATE/feature-request.yml references https://ui.nuxt.com/ while the project's package.json declares https://ui3.nuxt.com as the official homepage

How to reproduce:

  1. Check package.json line 8: "homepage": "https://ui3.nuxt.com"
  2. Check .github/ISSUE_TEMPLATE/feature-request.yml line 8: links to https://ui.nuxt.com/

Result: Template directs users to ui.nuxt.com instead of the canonical ui3.nuxt.com homepage

Expected: Template should reference the official homepage URL declared in package.json for consistency

- v3.x
- v2.x
default: 1
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/question.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ body:
attributes:
label: Package
options:
- v4.0.0-alpha.x
- v4.x
- v3.x
- v2.x
default: 1
Expand Down
2 changes: 1 addition & 1 deletion .github/advanced-issue-labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ policy:
block-list: []
label:
- name: 'v4'
keys: ['v4.0.0-alpha.x']
keys: ['v4.x']
- name: 'v3'
keys: ['v3.x']
- name: 'v2'
Expand Down
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,28 +18,28 @@ Nuxt UI harnesses the combined strengths of [Reka UI](https://reka-ui.com/), [Ta

> [!TIP]
> **Looking for more components ?**
> Check out [Nuxt UI Pro](https://ui.nuxt.com/pro), a collection of premium Vue components, composables, and utilities built on top of Nuxt UI for faster and more powerful app development.
> Check out [Nuxt UI Pro](https://ui3.nuxt.com/pro), a collection of premium Vue components, composables, and utilities built on top of Nuxt UI for faster and more powerful app development.

## Documentation

Visit https://ui.nuxt.com to explore the documentation.
Visit https://ui3.nuxt.com to explore the documentation.

## Installation

```bash [pnpm]
pnpm add @nuxt/ui
pnpm add @nuxt/ui@3
```

```bash [yarn]
yarn add @nuxt/ui
yarn add @nuxt/ui@3
```

```bash [npm]
npm install @nuxt/ui
npm install @nuxt/ui@3
```

```bash [bun]
bun add @nuxt/ui
bun add @nuxt/ui@3
```

### Nuxt
Expand All @@ -59,7 +59,7 @@ export default defineNuxtConfig({
@import "@nuxt/ui";
```

Learn more in the [installation guide](https://ui.nuxt.com/getting-started/installation/nuxt).
Learn more in the [installation guide](https://ui3.nuxt.com/getting-started/installation/nuxt).

### Vue

Expand Down Expand Up @@ -106,18 +106,18 @@ app.mount('#app')
@import "@nuxt/ui";
```

Learn more in the [installation guide](https://ui.nuxt.com/getting-started/installation/vue).
Learn more in the [installation guide](https://ui3.nuxt.com/getting-started/installation/vue).

## Contribution

Thank you for considering contributing to Nuxt UI. Here are a few ways you can get involved:

- Reporting Bugs: If you come across any bugs or issues, please check out the reporting bugs guide to learn how to submit a bug report.
- Suggestions: Have any thoughts to enhance Nuxt UI? We'd love to hear them! Check out the [contribution guide](https://ui.nuxt.com/getting-started/contribution) to share your suggestions.
- Suggestions: Have any thoughts to enhance Nuxt UI? We'd love to hear them! Check out the [contribution guide](https://ui3.nuxt.com/getting-started/contribution) to share your suggestions.

## Local Development

Follow the docs to [set up your local development environment](https://ui.nuxt.com/getting-started/contribution#local-development) and contribute.
Follow the docs to [set up your local development environment](https://ui3.nuxt.com/getting-started/contribution#local-development) and contribute.

## Credits

Expand Down
2 changes: 0 additions & 2 deletions docs/.env.example
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
# Specify the path of @nuxt/ui-pro locally
NUXT_UI_PRO_PATH=
# Production token for @nuxt/ui-pro, purchase on https://ui.nuxt.com/pro/purchase
NUXT_UI_PRO_LICENSE=
# Used when pre-rendering the docs for dynamic OG images
NUXT_PUBLIC_SITE_URL=
# Used to fetch `nuxt/ui-pro` docs content
Expand Down
7 changes: 4 additions & 3 deletions docs/app/app.vue
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ useHead({
],
link: [
// { rel: 'icon', type: 'image/svg+xml', href: '/icon.svg' },
{ rel: 'canonical', href: `https://ui.nuxt.com${withoutTrailingSlash(route.path)}` }
{ rel: 'canonical', href: `https://ui3.nuxt.com${withoutTrailingSlash(route.path)}` }
],
style: [
{ innerHTML: radius, id: 'nuxt-ui-radius', tagPriority: -2 },
Expand All @@ -52,10 +52,11 @@ provide('navigation', mappedNavigation)
<template>
<UApp :toaster="appConfig.toaster">
<NuxtLoadingIndicator color="var(--ui-primary)" :height="2" />
<Analytics />

<Analytics :debug="false" />

<template v-if="!route.path.startsWith('/examples')">
<!-- <Banner /> -->
<Banner />

<Header :links="links" />
</template>
Expand Down
17 changes: 4 additions & 13 deletions docs/app/components/Banner.vue
Original file line number Diff line number Diff line change
@@ -1,19 +1,10 @@
<template>
<UBanner
id="nuxtlabs-join-vercel"
title="NuxtLabs is joining Vercel"
icon="i-simple-icons-vercel"
to="https://nuxtlabs.com/?utm_source=nuxt-ui&utm_medium=banner&utm_campaign=nuxtlabs-vercel"
id="nuxtui-v4"
title="Nuxt UI v4 is offically released!"
icon="i-lucide-rocket"
to="https://ui.nuxt.com"
target="_blank"
close
:actions="[{
label: 'Read the announcement',
color: 'neutral',
variant: 'outline',
trailingIcon: 'i-lucide-arrow-right',
to: 'https://nuxtlabs.com/?utm_source=nuxt-ui&utm_medium=banner&utm_campaign=nuxtlabs-vercel',
target: '_blank',
class: 'ring-0'
}]"
/>
</template>
2 changes: 1 addition & 1 deletion docs/app/components/Header.vue
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ const items = computed(() => {
const uiPro1 = { label: 'v1.x', to: 'https://ui2.nuxt.com/pro' }

return [
{ label: 'v4.0.0-alpha.x', to: 'https://ui4.nuxt.com' },
{ label: 'v4.x', to: 'https://ui.nuxt.com' },
{ label: `v${config.version}`, active: true, color: 'primary' as const, checked: true, type: 'checkbox' as const },
route.path === '/' ? ui2 : route.path.startsWith('/pro') ? uiPro1 : module.value === 'ui-pro' ? uiPro1 : ui2
]
Expand Down
2 changes: 1 addition & 1 deletion docs/app/error.vue
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ provide('navigation', mappedNavigation)
<UApp>
<NuxtLoadingIndicator color="#FFF" />

<!-- <Banner /> -->
<Banner />

<Header :links="links" />

Expand Down
10 changes: 0 additions & 10 deletions docs/app/pages/[...slug].vue
Original file line number Diff line number Diff line change
Expand Up @@ -106,16 +106,6 @@ const communityLinks = computed(() => [{
label: 'Star on GitHub',
to: `https://github.com/nuxt/${page.value?.module === 'ui-pro' ? 'ui-pro' : 'ui'}`,
target: '_blank'
}, module.value === 'ui-pro' && {
icon: 'i-lucide-credit-card',
label: 'Purchase a license',
to: 'https://nuxt.lemonsqueezy.com/checkout/buy/057dacb2-87ba-4dc1-9256-59ee5b3bd394',
target: '_blank'
}, module.value === 'ui-pro' && {
icon: 'i-lucide-ticket-percent',
label: 'Become an affiliate',
to: 'https://nuxt.lemonsqueezy.com/affiliates',
target: '_blank'
}, {
icon: 'i-lucide-git-pull-request-arrow',
label: 'Contribution',
Expand Down
9 changes: 4 additions & 5 deletions docs/app/pages/figma/.figma.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ hero:
image: /figma/hero.png
links:
- label: Purchase Pro Kit
to: 'https://nuxt.lemonsqueezy.com/buy/17213c49-621b-4c2c-9478-3a50a099003d'
target: _blank
disabled: true
- label: Free Figma Kit
to: 'https://go.nuxt.com/figma-ui3'
icon: i-logos-figma
Expand Down Expand Up @@ -119,7 +118,7 @@ section4:
description: '**From download to deployment in simple steps.** :br Get instant access to production-ready components and start creating.'
links:
- label: Get access now
to: 'https://nuxt.lemonsqueezy.com/buy/17213c49-621b-4c2c-9478-3a50a099003d'
disabled: true
- label: Preview UI Pro Design Kit
to: 'https://go.nuxt.com/figma-ui-pro3'
icon: i-logos-figma
Expand Down Expand Up @@ -191,7 +190,7 @@ pricing:
- Lifetime Free Updates
button:
label: Buy now
to: https://nuxt.lemonsqueezy.com/buy/17213c49-621b-4c2c-9478-3a50a099003d
disabled: true
extraButton:
label: Preview in Figma
to: 'https://go.nuxt.com/figma-ui-pro3'
Expand All @@ -213,7 +212,7 @@ pricing:
- Lifetime free updates
button:
label: Buy now
to: https://nuxt.lemonsqueezy.com/buy/2979099c-b7a0-4ba1-90e0-a0d60509b92d
disabled: true
extraButton:
label: Preview in Figma
to: 'https://go.nuxt.com/figma-ui-pro3'
Expand Down
10 changes: 5 additions & 5 deletions docs/app/pages/pro/.content/pricing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ pricing:
title: Upgrade to Nuxt UI [Pro]{class="text-primary"}.
description: On top of 40+ open source components from Nuxt UI, Pro gives you access to 50+ premium Vue components to create beautiful & responsive Nuxt applications in minutes. It includes all primitives to build landing pages, documentations, blogs, dashboards or entire SaaS products.
freePlan:
description: "**NuxtLabs is joining Vercel** :tada: As part of this transition, Nuxt UI is becoming even more accessible.<br><br> **In September, we're launching Nuxt UI v4**: a free, open-source library that unifies Nuxt UI and Nuxt UI Pro, offering 100+ components and a complete free Figma Kit for everyone."
description: ":tada: **Nuxt UI v4 is now available**: a free, open-source library that unifies Nuxt UI and Nuxt UI Pro, offering 100+ components and a complete free Figma Kit for everyone."
orientation: horizontal
button:
label: Read the announcement
Expand Down Expand Up @@ -47,7 +47,7 @@ pricing:
- Includes Nuxt UI [Figma Kit](https://go.nuxt.com/figma-ui3)
button:
label: Buy Figma Kit
to: 'https://nuxt.lemonsqueezy.com/buy/17213c49-621b-4c2c-9478-3a50a099003d'
disabled: true
color: 'neutral'
plans:
- title: Solo
Expand All @@ -64,7 +64,7 @@ pricing:
- Lifetime access
button:
label: Buy now
to: https://nuxt.lemonsqueezy.com/buy/057dacb2-87ba-4dc1-9256-59ee5b3bd394
disabled: true
- title: Startup
description: Best suited for small teams, startups and agencies.
price: $499
Expand All @@ -79,7 +79,7 @@ pricing:
- Lifetime access
button:
label: Buy now
to: https://nuxt.lemonsqueezy.com/buy/2e042a33-7e76-4dda-bd68-e353c182e571
disabled: true
highlight: true
- title: Organization
description: Ideal for larger teams and organizations.
Expand All @@ -96,7 +96,7 @@ pricing:
- Lifetime access
button:
label: Buy now
to: https://nuxt.lemonsqueezy.com/buy/2979099c-b7a0-4ba1-90e0-a0d60509b92d
disabled: true
logos:
- src: /pro/logos/springfieldclinic.svg
alt: Springfield Clinic
Expand Down
8 changes: 4 additions & 4 deletions docs/content/1.getting-started/2.installation/1.nuxt.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,19 @@ Looking for the **Vue** version?
::code-group{sync="pm"}

```bash [pnpm]
pnpm add @nuxt/ui
pnpm add @nuxt/ui@3
```

```bash [yarn]
yarn add @nuxt/ui
yarn add @nuxt/ui@3
```

```bash [npm]
npm install @nuxt/ui
npm install @nuxt/ui@3
```

```bash [bun]
bun add @nuxt/ui
bun add @nuxt/ui@3
```

::
Expand Down
8 changes: 4 additions & 4 deletions docs/content/1.getting-started/2.installation/2.vue.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,19 @@ Looking for the **Nuxt** version?
::code-group{sync="pm"}

```bash [pnpm]
pnpm add @nuxt/ui
pnpm add @nuxt/ui@3
```

```bash [yarn]
yarn add @nuxt/ui
yarn add @nuxt/ui@3
```

```bash [npm]
npm install @nuxt/ui
npm install @nuxt/ui@3
```

```bash [bun]
bun add @nuxt/ui
bun add @nuxt/ui@3
```

::
Expand Down
16 changes: 8 additions & 8 deletions docs/content/1.getting-started/2.migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,19 +56,19 @@ npx @tailwindcss/upgrade
::::code-group{sync="pm"}

```bash [pnpm]
pnpm add @nuxt/ui
pnpm add @nuxt/ui@3
```

```bash [yarn]
yarn add @nuxt/ui
yarn add @nuxt/ui@3
```

```bash [npm]
npm install @nuxt/ui
npm install @nuxt/ui@3
```

```bash [bun]
bun add @nuxt/ui
bun add @nuxt/ui@3
```

::::
Expand All @@ -81,19 +81,19 @@ bun add @nuxt/ui
::::code-group{sync="pm"}

```bash [pnpm]
pnpm add @nuxt/ui-pro
pnpm add @nuxt/ui-pro@3
```

```bash [yarn]
yarn add @nuxt/ui-pro
yarn add @nuxt/ui-pro@3
```

```bash [npm]
npm install @nuxt/ui-pro
npm install @nuxt/ui-pro@3
```

```bash [bun]
bun add @nuxt/ui-pro
bun add @nuxt/ui-pro@3
```

::::
Expand Down
2 changes: 1 addition & 1 deletion docs/content/1.getting-started/contribution.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ navigation: false
Nuxt UI thrives thanks to its incredible community ❀️. We welcome all contributions through bug reports, pull requests, and feedback to help make this library even better.

::caution
Before reporting a bug or requesting a feature, make sure that you have read through our [documentation](https://ui.nuxt.com/) and existing [issues](https://github.com/nuxt/ui/issues?q=is%3Aissue%20is%3Aopen%20sort%3Aupdated-desc%20label%3Av3).
Before reporting a bug or requesting a feature, make sure that you have read through our [documentation](https://ui3.nuxt.com/) and existing [issues](https://github.com/nuxt/ui/issues?q=is%3Aissue%20is%3Aopen%20sort%3Aupdated-desc%20label%3Av3).
::

## Project Structure
Expand Down
4 changes: 2 additions & 2 deletions docs/nuxt.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ export default defineNuxtConfig({
},
$production: {
site: {
url: 'https://ui.nuxt.com'
url: 'https://ui3.nuxt.com'
}
},

Expand Down Expand Up @@ -225,7 +225,7 @@ export default defineNuxtConfig({
},

llms: {
domain: 'https://ui.nuxt.com',
domain: 'https://ui3.nuxt.com',
title: 'Nuxt UI',
description: 'A comprehensive, Nuxt-integrated UI library providing a rich set of fully-styled, accessible and highly customizable components for building modern web applications.',
full: {
Expand Down
Loading
Loading