[{"data":1,"prerenderedAt":643},["ShallowReactive",2],{"navigation":3,"$fMW9jOOkNpZriWVK3P_bZYNOyYR2IEPvrHsC7cDBlJJc":405,"/docs/introduction":418,"surround-/docs/introduction":641},[4],{"title":5,"path":6,"stem":7,"children":8,"page":17},"Docs","/docs","docs",[9,90,353,360,366,379],{"path":6,"stem":7,"title":10,"type":11,"children":12},"Get Started","group",[13,19,44,48,52,70,74,78,82,86],{"title":14,"path":15,"stem":16,"new":17,"type":18,"children":-1},"Introduction","/docs/introduction","docs/01.introduction",false,"page",{"title":20,"path":21,"stem":22,"children":23,"new":17,"type":11},"Installation","/docs/installation","docs/02.installation",[24,28,32,36,40],{"title":25,"path":26,"stem":27,"new":17,"type":18,"children":-1},"Vite","/docs/installation/vite","docs/installation/01.vite",{"title":29,"path":30,"stem":31,"new":17,"type":18,"children":-1},"Nuxt","/docs/installation/nuxt","docs/installation/02.nuxt",{"title":33,"path":34,"stem":35,"new":17,"type":18,"children":-1},"Astro","/docs/installation/astro","docs/installation/03.astro",{"title":37,"path":38,"stem":39,"new":17,"type":18,"children":-1},"Laravel","/docs/installation/laravel","docs/installation/04.laravel",{"title":41,"path":42,"stem":43,"new":17,"type":18,"children":-1},"Manual Installation","/docs/installation/manual","docs/installation/05.manual",{"title":45,"path":46,"stem":47,"new":17,"type":18,"children":-1},"components.json","/docs/components-json","docs/03.components-json",{"title":49,"path":50,"stem":51,"new":17,"type":18,"children":-1},"Theming","/docs/theming","docs/04.theming",{"title":53,"path":54,"stem":55,"children":56,"new":17,"type":11},"Dark Mode","/docs/dark-mode","docs/05.dark-mode",[57,60,63,67],{"title":25,"path":58,"stem":59,"new":17,"type":18,"children":-1},"/docs/dark-mode/vite","docs/dark-mode/01.vite",{"title":29,"path":61,"stem":62,"new":17,"type":18,"children":-1},"/docs/dark-mode/nuxt","docs/dark-mode/02.nuxt",{"title":64,"path":65,"stem":66,"new":17,"type":18,"children":-1},"Vitepress","/docs/dark-mode/vitepress","docs/dark-mode/03.vitepress",{"title":33,"path":68,"stem":69,"new":17,"type":18,"children":-1},"/docs/dark-mode/astro","docs/dark-mode/04.astro",{"title":71,"path":72,"stem":73,"new":17,"type":18,"children":-1},"CLI","/docs/cli","docs/06.cli",{"title":75,"path":76,"stem":77,"new":17,"type":18,"children":-1},"JavaScript","/docs/javascript","docs/07.javascript",{"title":79,"path":80,"stem":81,"new":17,"type":18,"children":-1},"Figma","/docs/figma","docs/09.figma",{"title":83,"path":84,"stem":85,"new":17,"type":18,"children":-1},"Changelog","/docs/changelog","docs/10.changelog",{"title":87,"path":88,"stem":89,"new":17,"type":18,"children":-1},"Legacy Docs","/docs/legacy","docs/11.legacy",{"title":91,"path":92,"stem":93,"children":94,"new":17,"type":11},"Components","/docs/components","docs/02.components",[95,100,104,108,112,116,120,124,128,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217,221,225,229,233,237,241,245,249,253,257,261,265,269,273,277,281,285,289,293,297,301,305,309,313,317,321,325,329,333,337,341,345,349],{"title":96,"path":97,"stem":98,"new":17,"type":99,"children":-1},"Accordion","/docs/components/accordion","docs/components/accordion","component",{"title":101,"path":102,"stem":103,"new":17,"type":99,"children":-1},"Alert","/docs/components/alert","docs/components/alert",{"title":105,"path":106,"stem":107,"new":17,"type":99,"children":-1},"Alert Dialog","/docs/components/alert-dialog","docs/components/alert-dialog",{"title":109,"path":110,"stem":111,"new":17,"type":99,"children":-1},"Aspect Ratio","/docs/components/aspect-ratio","docs/components/aspect-ratio",{"title":113,"path":114,"stem":115,"new":17,"type":99,"children":-1},"Avatar","/docs/components/avatar","docs/components/avatar",{"title":117,"path":118,"stem":119,"new":17,"type":99,"children":-1},"Badge","/docs/components/badge","docs/components/badge",{"title":121,"path":122,"stem":123,"new":17,"type":99,"children":-1},"Breadcrumb","/docs/components/breadcrumb","docs/components/breadcrumb",{"title":125,"path":126,"stem":127,"new":17,"type":99,"children":-1},"Button","/docs/components/button","docs/components/button",{"title":129,"path":130,"stem":131,"new":132,"type":99,"children":-1},"Button Group","/docs/components/button-group","docs/components/button-group",true,{"title":134,"path":135,"stem":136,"new":17,"type":99,"children":-1},"Calendar","/docs/components/calendar","docs/components/calendar",{"title":138,"path":139,"stem":140,"new":17,"type":99,"children":-1},"Card","/docs/components/card","docs/components/card",{"title":142,"path":143,"stem":144,"new":17,"type":99,"children":-1},"Carousel","/docs/components/carousel","docs/components/carousel",{"title":146,"path":147,"stem":148,"new":17,"type":99,"children":-1},"Chart","/docs/components/chart","docs/components/chart",{"title":150,"path":151,"stem":152,"new":17,"type":99,"children":-1},"Checkbox","/docs/components/checkbox","docs/components/checkbox",{"title":154,"path":155,"stem":156,"new":17,"type":99,"children":-1},"Collapsible","/docs/components/collapsible","docs/components/collapsible",{"title":158,"path":159,"stem":160,"new":17,"type":99,"children":-1},"Combobox","/docs/components/combobox","docs/components/combobox",{"title":162,"path":163,"stem":164,"new":17,"type":99,"children":-1},"Command","/docs/components/command","docs/components/command",{"title":166,"path":167,"stem":168,"new":17,"type":99,"children":-1},"Context Menu","/docs/components/context-menu","docs/components/context-menu",{"title":170,"path":171,"stem":172,"new":17,"type":99,"children":-1},"Data Table","/docs/components/data-table","docs/components/data-table",{"title":174,"path":175,"stem":176,"new":17,"type":99,"children":-1},"Date Picker","/docs/components/date-picker","docs/components/date-picker",{"title":178,"path":179,"stem":180,"new":17,"type":99,"children":-1},"Dialog","/docs/components/dialog","docs/components/dialog",{"title":182,"path":183,"stem":184,"new":17,"type":99,"children":-1},"Drawer","/docs/components/drawer","docs/components/drawer",{"title":186,"path":187,"stem":188,"new":17,"type":99,"children":-1},"Dropdown Menu","/docs/components/dropdown-menu","docs/components/dropdown-menu",{"title":190,"path":191,"stem":192,"new":132,"type":99,"children":-1},"Empty","/docs/components/empty","docs/components/empty",{"title":194,"path":195,"stem":196,"new":132,"type":99,"children":-1},"Field","/docs/components/field","docs/components/field",{"title":198,"path":199,"stem":200,"new":17,"type":99,"children":-1},"Form","/docs/components/form","docs/components/form",{"title":202,"path":203,"stem":204,"new":17,"type":99,"children":-1},"Hover Card","/docs/components/hover-card","docs/components/hover-card",{"title":206,"path":207,"stem":208,"new":17,"type":99,"children":-1},"Input","/docs/components/input","docs/components/input",{"title":210,"path":211,"stem":212,"new":132,"type":99,"children":-1},"Input Group","/docs/components/input-group","docs/components/input-group",{"title":214,"path":215,"stem":216,"new":17,"type":99,"children":-1},"Input OTP","/docs/components/input-otp","docs/components/input-otp",{"title":218,"path":219,"stem":220,"new":132,"type":99,"children":-1},"Item","/docs/components/item","docs/components/item",{"title":222,"path":223,"stem":224,"new":132,"type":99,"children":-1},"Kbd","/docs/components/kbd","docs/components/kbd",{"title":226,"path":227,"stem":228,"new":17,"type":99,"children":-1},"Label","/docs/components/label","docs/components/label",{"title":230,"path":231,"stem":232,"new":17,"type":99,"children":-1},"Menubar","/docs/components/menubar","docs/components/menubar",{"title":234,"path":235,"stem":236,"new":132,"type":99,"children":-1},"Native Select","/docs/components/native-select","docs/components/native-select",{"title":238,"path":239,"stem":240,"new":17,"type":99,"children":-1},"Navigation Menu","/docs/components/navigation-menu","docs/components/navigation-menu",{"title":242,"path":243,"stem":244,"new":17,"type":99,"children":-1},"Number Field","/docs/components/number-field","docs/components/number-field",{"title":246,"path":247,"stem":248,"new":17,"type":99,"children":-1},"Pagination","/docs/components/pagination","docs/components/pagination",{"title":250,"path":251,"stem":252,"new":17,"type":99,"children":-1},"Pin Input","/docs/components/pin-input","docs/components/pin-input",{"title":254,"path":255,"stem":256,"new":17,"type":99,"children":-1},"Popover","/docs/components/popover","docs/components/popover",{"title":258,"path":259,"stem":260,"new":17,"type":99,"children":-1},"Progress","/docs/components/progress","docs/components/progress",{"title":262,"path":263,"stem":264,"new":17,"type":99,"children":-1},"Radio Group","/docs/components/radio-group","docs/components/radio-group",{"title":266,"path":267,"stem":268,"new":17,"type":99,"children":-1},"Range Calendar","/docs/components/range-calendar","docs/components/range-calendar",{"title":270,"path":271,"stem":272,"new":17,"type":99,"children":-1},"Resizable","/docs/components/resizable","docs/components/resizable",{"title":274,"path":275,"stem":276,"new":17,"type":99,"children":-1},"Scroll Area","/docs/components/scroll-area","docs/components/scroll-area",{"title":278,"path":279,"stem":280,"new":17,"type":99,"children":-1},"Select","/docs/components/select","docs/components/select",{"title":282,"path":283,"stem":284,"new":17,"type":99,"children":-1},"Separator","/docs/components/separator","docs/components/separator",{"title":286,"path":287,"stem":288,"new":17,"type":99,"children":-1},"Sheet","/docs/components/sheet","docs/components/sheet",{"title":290,"path":291,"stem":292,"new":17,"type":99,"children":-1},"Sidebar","/docs/components/sidebar","docs/components/sidebar",{"title":294,"path":295,"stem":296,"new":17,"type":99,"children":-1},"Skeleton","/docs/components/skeleton","docs/components/skeleton",{"title":298,"path":299,"stem":300,"new":17,"type":99,"children":-1},"Slider","/docs/components/slider","docs/components/slider",{"title":302,"path":303,"stem":304,"new":17,"type":99,"children":-1},"Sonner","/docs/components/sonner","docs/components/sonner",{"title":306,"path":307,"stem":308,"new":132,"type":99,"children":-1},"Spinner","/docs/components/spinner","docs/components/spinner",{"title":310,"path":311,"stem":312,"new":17,"type":99,"children":-1},"Stepper","/docs/components/stepper","docs/components/stepper",{"title":314,"path":315,"stem":316,"new":17,"type":99,"children":-1},"Switch","/docs/components/switch","docs/components/switch",{"title":318,"path":319,"stem":320,"new":17,"type":99,"children":-1},"Table","/docs/components/table","docs/components/table",{"title":322,"path":323,"stem":324,"new":17,"type":99,"children":-1},"Tabs","/docs/components/tabs","docs/components/tabs",{"title":326,"path":327,"stem":328,"new":17,"type":99,"children":-1},"Tags Input","/docs/components/tags-input","docs/components/tags-input",{"title":330,"path":331,"stem":332,"new":17,"type":99,"children":-1},"Textarea","/docs/components/textarea","docs/components/textarea",{"title":334,"path":335,"stem":336,"new":17,"type":99,"children":-1},"Toast","/docs/components/toast","docs/components/toast",{"title":338,"path":339,"stem":340,"new":17,"type":99,"children":-1},"Toggle","/docs/components/toggle","docs/components/toggle",{"title":342,"path":343,"stem":344,"new":17,"type":99,"children":-1},"Toggle Group","/docs/components/toggle-group","docs/components/toggle-group",{"title":346,"path":347,"stem":348,"new":17,"type":99,"children":-1},"Tooltip","/docs/components/tooltip","docs/components/tooltip",{"title":350,"path":351,"stem":352,"new":17,"type":99,"children":-1},"Typography","/docs/components/typography","docs/components/typography",{"title":20,"path":21,"stem":22,"children":354,"new":17,"type":11},[355,356,357,358,359],{"title":25,"path":26,"stem":27,"new":17,"type":18,"children":-1},{"title":29,"path":30,"stem":31,"new":17,"type":18,"children":-1},{"title":33,"path":34,"stem":35,"new":17,"type":18,"children":-1},{"title":37,"path":38,"stem":39,"new":17,"type":18,"children":-1},{"title":41,"path":42,"stem":43,"new":17,"type":18,"children":-1},{"title":53,"path":54,"stem":55,"children":361,"new":17,"type":11},[362,363,364,365],{"title":25,"path":58,"stem":59,"new":17,"type":18,"children":-1},{"title":29,"path":61,"stem":62,"new":17,"type":18,"children":-1},{"title":64,"path":65,"stem":66,"new":17,"type":18,"children":-1},{"title":33,"path":68,"stem":69,"new":17,"type":18,"children":-1},{"title":367,"path":368,"stem":369,"children":370,"new":17,"type":11},"Forms","/docs/forms","docs/forms",[371,375],{"title":372,"path":373,"stem":374,"new":17,"type":18,"children":-1},"VeeValidate","/docs/forms/vee-validate","docs/forms/01.vee-validate",{"title":376,"path":377,"stem":378,"new":17,"type":18,"children":-1},"TanStack Form","/docs/forms/tanstack-form","docs/forms/02.tanstack-form",{"title":380,"path":381,"stem":382,"children":383,"new":17,"type":11},"Registry","/docs/registry","docs/registry/index",[384,385,389,393,397,401],{"title":380,"path":381,"stem":382,"new":17,"type":18,"children":-1},{"title":386,"path":387,"stem":388,"new":17,"type":18,"children":-1},"Examples","/docs/registry/examples","docs/registry/examples",{"title":390,"path":391,"stem":392,"new":17,"type":18,"children":-1},"FAQ","/docs/registry/faq","docs/registry/faq",{"title":394,"path":395,"stem":396,"new":17,"type":18,"children":-1},"Getting Started","/docs/registry/getting-started","docs/registry/getting-started",{"title":398,"path":399,"stem":400,"new":17,"type":18,"children":-1},"registry-item.json","/docs/registry/registry-item-json","docs/registry/registry-item-json",{"title":402,"path":403,"stem":404,"new":17,"type":18,"children":-1},"registry.json","/docs/registry/registry-json","docs/registry/registry-json",{"repo":406},{"id":407,"name":408,"repo":409,"description":410,"createdAt":411,"updatedAt":412,"pushedAt":413,"stars":414,"watchers":415,"forks":416,"defaultBranch":417},658791894,"shadcn-vue","unovue/shadcn-vue","Vue port of shadcn-ui","2023-06-26T13:53:23Z","2026-04-06T17:33:41Z","2026-04-06T17:33:39Z",9706,37,634,"dev",{"id":419,"title":14,"body":420,"description":634,"extension":635,"links":636,"meta":637,"navigation":132,"new":17,"path":15,"rawbody":638,"seo":639,"stem":16,"__hash__":640},"content/docs/01.introduction.md",{"type":421,"value":422,"toc":626},"minimark",[423,430,438,441,447,450,484,489,492,512,518,546,550,556,561,565,568,582,587,591,594,614,618,621],[424,425,426],"p",{},[427,428,429],"strong",{},"This is not a component library. It is how you build your component library.",[431,432,435],"vue-school-link",{"lesson":433,"placement":434},"what-is-shadcn-vue","top",[424,436,437],{},"Watch a Vue School intro video about shadcn-vue.",[424,439,440],{},"You know how most traditional component libraries work: you install a package from NPM, import the components, and use them in your app.",[424,442,443,444],{},"This approach works well until you need to customize a component to fit your design system or require one that isn't included in the library. ",[427,445,446],{},"Often, you end up wrapping library components, writing workarounds to override styles, or mixing components from different libraries with incompatible APIs.",[424,448,449],{},"This is what shadcn-vue aims to solve. It is built around the following principles:",[451,452,453,460,466,472,478],"ul",{},[454,455,456,459],"li",{},[427,457,458],{},"Open Code:"," The top layer of your component code is open for modification.",[454,461,462,465],{},[427,463,464],{},"Composition:"," Every component uses a common, composable interface, making them predictable.",[454,467,468,471],{},[427,469,470],{},"Distribution:"," A flat-file schema and command-line tool make it easy to distribute components.",[454,473,474,477],{},[427,475,476],{},"Beautiful Defaults:"," Carefully chosen default styles, so you get great design out-of-the-box.",[454,479,480,483],{},[427,481,482],{},"AI-Ready:"," Open code for LLMs to read, understand, and improve.",[485,486,488],"h2",{"id":487},"open-code","Open Code",[424,490,491],{},"shadcn-vue hands you the actual component code. You have full control to customize and extend the components to your needs. This means:",[451,493,494,500,506],{},[454,495,496,499],{},[427,497,498],{},"Full Transparency:"," You see exactly how each component is built.",[454,501,502,505],{},[427,503,504],{},"Easy Customization:"," Modify any part of a component to fit your design and functionality requirements.",[454,507,508,511],{},[427,509,510],{},"AI Integration:"," Access to the code makes it straightforward for LLMs to read, understand, and even improve your components.",[424,513,514],{},[515,516,517],"em",{},"In a typical library, if you need to change a button's behavior, you have to override styles or wrap the component. With shadcn-vue, you simply edit the button code directly.",[519,520,522,523],"accordion",{"collapsible":521},"","\n  ",[524,525,529,530,529,534,522],"accordion-item",{"value":526,"className":527},"faq-1",[528],"border-none","\n    ",[531,532,533],"accordion-trigger",{},"\n      How do I pull upstream updates in an Open Code approach?\n    ",[535,536,537,538,537,541,529],"accordion-content",{},"\n      ",[424,539,540],{},"\n        shadcn-vue follows a headless component architecture. This means the core\n        of your app can receive fixes by updating your dependencies, for\n        instance, radix-ui or input-otp.\n      ",[424,542,545],{"className":543},[544],"mt-4","\n        The topmost layer, i.e., the one closest to your design system, is not\n        coupled with the implementation of the library. It stays open for\n        modification.\n      ",[485,547,549],{"id":548},"composition","Composition",[424,551,552,553],{},"Every component in shadcn-vue shares a common, composable interface. ",[427,554,555],{},"If a component does not exist, we bring it in, make it composable, and adjust its style to match and work with the rest of the design system.",[424,557,558],{},[515,559,560],{},"A shared, composable interface means it's predictable for both your team and LLMs. You are not learning different APIs for every new component. Even for third-party ones.",[485,562,564],{"id":563},"distribution","Distribution",[424,566,567],{},"shadcn-vue is also a code distribution system. It defines a schema for components and a CLI to distribute them.",[451,569,570,576],{},[454,571,572,575],{},[427,573,574],{},"Schema:"," A flat-file structure that defines the components, their dependencies, and properties.",[454,577,578,581],{},[427,579,580],{},"CLI:"," A command-line tool to distribute and install components across projects with cross-framework support.",[424,583,584],{},[515,585,586],{},"You can use the schema to distribute your components to other projects or have AI generate completely new components based on existing schema.",[485,588,590],{"id":589},"beautiful-defaults","Beautiful Defaults",[424,592,593],{},"shadcn-vue comes with a large collection of components that have carefully chosen default styles. They are designed to look good on their own and to work well together as a consistent system:",[451,595,596,602,608],{},[454,597,598,601],{},[427,599,600],{},"Good Out-of-the-Box:"," Your UI has a clean and minimal look without extra work.",[454,603,604,607],{},[427,605,606],{},"Unified Design:"," Components naturally fit with one another. Each component is built to match the others, keeping your UI consistent.",[454,609,610,613],{},[427,611,612],{},"Easily Customizable:"," If you want to change something, it's simple to override and extend the defaults.",[485,615,617],{"id":616},"ai-ready","AI-Ready",[424,619,620],{},"The design of shadcn-vue makes it easy for AI tools to work with your code. Its open code and consistent API allow AI models to read, understand, and even generate new components.",[424,622,623],{},[515,624,625],{},"An AI model can learn how your components work and suggest improvements or even create new components that integrate with your existing design.",{"title":521,"searchDepth":627,"depth":627,"links":628},2,[629,630,631,632,633],{"id":487,"depth":627,"text":488},{"id":548,"depth":627,"text":549},{"id":563,"depth":627,"text":564},{"id":589,"depth":627,"text":590},{"id":616,"depth":627,"text":617},"shadcn-vue is a set of beautifully-designed, accessible components and a code distribution platform. Works with your favorite frameworks and AI models. Open Source. Open Code.","md",null,{},"---\ntitle: Introduction\ndescription: shadcn-vue is a set of beautifully-designed, accessible components and a code distribution platform. Works with your favorite frameworks and AI models. Open Source. Open Code.\n---\n\n**This is not a component library. It is how you build your component library.**\n\n::vue-school-link{lesson=\"what-is-shadcn-vue\" placement=\"top\"}\nWatch a Vue School intro video about shadcn-vue.\n::\n\nYou know how most traditional component libraries work: you install a package from NPM, import the components, and use them in your app.\n\nThis approach works well until you need to customize a component to fit your design system or require one that isn't included in the library. **Often, you end up wrapping library components, writing workarounds to override styles, or mixing components from different libraries with incompatible APIs.**\n\nThis is what shadcn-vue aims to solve. It is built around the following principles:\n\n- **Open Code:** The top layer of your component code is open for modification.\n- **Composition:** Every component uses a common, composable interface, making them predictable.\n- **Distribution:** A flat-file schema and command-line tool make it easy to distribute components.\n- **Beautiful Defaults:** Carefully chosen default styles, so you get great design out-of-the-box.\n- **AI-Ready:** Open code for LLMs to read, understand, and improve.\n\n## Open Code\n\nshadcn-vue hands you the actual component code. You have full control to customize and extend the components to your needs. This means:\n\n- **Full Transparency:** You see exactly how each component is built.\n- **Easy Customization:** Modify any part of a component to fit your design and functionality requirements.\n- **AI Integration:** Access to the code makes it straightforward for LLMs to read, understand, and even improve your components.\n\n_In a typical library, if you need to change a button's behavior, you have to override styles or wrap the component. With shadcn-vue, you simply edit the button code directly._\n\n\u003Caccordion collapsible>\n  \u003Caccordion-item value=\"faq-1\" class=\"border-none\">\n    \u003Caccordion-trigger>\n      How do I pull upstream updates in an Open Code approach?\n    \u003C/accordion-trigger>\n    \u003Caccordion-content>\n      \u003Cp>\n        shadcn-vue follows a headless component architecture. This means the core\n        of your app can receive fixes by updating your dependencies, for\n        instance, radix-ui or input-otp.\n      \u003C/p>\n      \u003Cp class=\"mt-4\">\n        The topmost layer, i.e., the one closest to your design system, is not\n        coupled with the implementation of the library. It stays open for\n        modification.\n      \u003C/p>\n    \u003C/accordion-content>\n  \u003C/accordion-item>\n\u003C/accordion>\n\n## Composition\n\nEvery component in shadcn-vue shares a common, composable interface. **If a component does not exist, we bring it in, make it composable, and adjust its style to match and work with the rest of the design system.**\n\n_A shared, composable interface means it's predictable for both your team and LLMs. You are not learning different APIs for every new component. Even for third-party ones._\n\n## Distribution\n\nshadcn-vue is also a code distribution system. It defines a schema for components and a CLI to distribute them.\n\n- **Schema:** A flat-file structure that defines the components, their dependencies, and properties.\n- **CLI:** A command-line tool to distribute and install components across projects with cross-framework support.\n\n_You can use the schema to distribute your components to other projects or have AI generate completely new components based on existing schema._\n\n## Beautiful Defaults\n\nshadcn-vue comes with a large collection of components that have carefully chosen default styles. They are designed to look good on their own and to work well together as a consistent system:\n\n- **Good Out-of-the-Box:** Your UI has a clean and minimal look without extra work.\n- **Unified Design:** Components naturally fit with one another. Each component is built to match the others, keeping your UI consistent.\n- **Easily Customizable:** If you want to change something, it's simple to override and extend the defaults.\n\n## AI-Ready\n\nThe design of shadcn-vue makes it easy for AI tools to work with your code. Its open code and consistent API allow AI models to read, understand, and even generate new components.\n\n_An AI model can learn how your components work and suggest improvements or even create new components that integrate with your existing design._\n",{"title":14,"description":634},"uBSMvXEjTL_ed1JaTnHDbVl-jUS5nHtg27n2qAimvJY",[636,642],{"title":91,"path":92,"stem":93,"children":-1},1775649976870]