[{"data":1,"prerenderedAt":817},["ShallowReactive",2],{"navigation":3,"$fMW9jOOkNpZriWVK3P_bZYNOyYR2IEPvrHsC7cDBlJJc":404,"/docs/registry/examples":417,"surround-/docs/registry/examples":814},[4],{"title":5,"path":6,"stem":7,"children":8,"page":18},"Docs","/docs","docs",[9,273,299,317,330,356],{"title":10,"path":11,"stem":12,"children":13,"new":18,"type":272},"Components","/docs/components","docs/02.components",[14,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200,204,208,212,216,220,224,228,232,236,240,244,248,252,256,260,264,268],{"title":15,"path":16,"stem":17,"new":18,"type":19,"children":-1},"Accordion","/docs/components/accordion","docs/components/accordion",false,"component",{"title":21,"path":22,"stem":23,"new":18,"type":19,"children":-1},"Alert","/docs/components/alert","docs/components/alert",{"title":25,"path":26,"stem":27,"new":18,"type":19,"children":-1},"Alert Dialog","/docs/components/alert-dialog","docs/components/alert-dialog",{"title":29,"path":30,"stem":31,"new":18,"type":19,"children":-1},"Aspect Ratio","/docs/components/aspect-ratio","docs/components/aspect-ratio",{"title":33,"path":34,"stem":35,"new":18,"type":19,"children":-1},"Avatar","/docs/components/avatar","docs/components/avatar",{"title":37,"path":38,"stem":39,"new":18,"type":19,"children":-1},"Badge","/docs/components/badge","docs/components/badge",{"title":41,"path":42,"stem":43,"new":18,"type":19,"children":-1},"Breadcrumb","/docs/components/breadcrumb","docs/components/breadcrumb",{"title":45,"path":46,"stem":47,"new":18,"type":19,"children":-1},"Button","/docs/components/button","docs/components/button",{"title":49,"path":50,"stem":51,"new":18,"type":19,"children":-1},"Button Group","/docs/components/button-group","docs/components/button-group",{"title":53,"path":54,"stem":55,"new":18,"type":19,"children":-1},"Calendar","/docs/components/calendar","docs/components/calendar",{"title":57,"path":58,"stem":59,"new":18,"type":19,"children":-1},"Card","/docs/components/card","docs/components/card",{"title":61,"path":62,"stem":63,"new":18,"type":19,"children":-1},"Carousel","/docs/components/carousel","docs/components/carousel",{"title":65,"path":66,"stem":67,"new":18,"type":19,"children":-1},"Chart","/docs/components/chart","docs/components/chart",{"title":69,"path":70,"stem":71,"new":18,"type":19,"children":-1},"Checkbox","/docs/components/checkbox","docs/components/checkbox",{"title":73,"path":74,"stem":75,"new":18,"type":19,"children":-1},"Collapsible","/docs/components/collapsible","docs/components/collapsible",{"title":77,"path":78,"stem":79,"new":18,"type":19,"children":-1},"Combobox","/docs/components/combobox","docs/components/combobox",{"title":81,"path":82,"stem":83,"new":18,"type":19,"children":-1},"Command","/docs/components/command","docs/components/command",{"title":85,"path":86,"stem":87,"new":18,"type":19,"children":-1},"Context Menu","/docs/components/context-menu","docs/components/context-menu",{"title":89,"path":90,"stem":91,"new":18,"type":19,"children":-1},"Data Table","/docs/components/data-table","docs/components/data-table",{"title":93,"path":94,"stem":95,"new":18,"type":19,"children":-1},"Date Picker","/docs/components/date-picker","docs/components/date-picker",{"title":97,"path":98,"stem":99,"new":18,"type":19,"children":-1},"Dialog","/docs/components/dialog","docs/components/dialog",{"title":101,"path":102,"stem":103,"new":18,"type":19,"children":-1},"Drawer","/docs/components/drawer","docs/components/drawer",{"title":105,"path":106,"stem":107,"new":18,"type":19,"children":-1},"Dropdown Menu","/docs/components/dropdown-menu","docs/components/dropdown-menu",{"title":109,"path":110,"stem":111,"new":18,"type":19,"children":-1},"Empty","/docs/components/empty","docs/components/empty",{"title":113,"path":114,"stem":115,"new":18,"type":19,"children":-1},"Field","/docs/components/field","docs/components/field",{"title":117,"path":118,"stem":119,"new":18,"type":19,"children":-1},"Form","/docs/components/form","docs/components/form",{"title":121,"path":122,"stem":123,"new":18,"type":19,"children":-1},"Hover Card","/docs/components/hover-card","docs/components/hover-card",{"title":125,"path":126,"stem":127,"new":18,"type":19,"children":-1},"Input","/docs/components/input","docs/components/input",{"title":129,"path":130,"stem":131,"new":18,"type":19,"children":-1},"Input Group","/docs/components/input-group","docs/components/input-group",{"title":133,"path":134,"stem":135,"new":18,"type":19,"children":-1},"Input OTP","/docs/components/input-otp","docs/components/input-otp",{"title":137,"path":138,"stem":139,"new":18,"type":19,"children":-1},"Item","/docs/components/item","docs/components/item",{"title":141,"path":142,"stem":143,"new":18,"type":19,"children":-1},"Kbd","/docs/components/kbd","docs/components/kbd",{"title":145,"path":146,"stem":147,"new":18,"type":19,"children":-1},"Label","/docs/components/label","docs/components/label",{"title":149,"path":150,"stem":151,"new":18,"type":19,"children":-1},"Menubar","/docs/components/menubar","docs/components/menubar",{"title":153,"path":154,"stem":155,"new":18,"type":19,"children":-1},"Native Select","/docs/components/native-select","docs/components/native-select",{"title":157,"path":158,"stem":159,"new":18,"type":19,"children":-1},"Navigation Menu","/docs/components/navigation-menu","docs/components/navigation-menu",{"title":161,"path":162,"stem":163,"new":18,"type":19,"children":-1},"Number Field","/docs/components/number-field","docs/components/number-field",{"title":165,"path":166,"stem":167,"new":18,"type":19,"children":-1},"Pagination","/docs/components/pagination","docs/components/pagination",{"title":169,"path":170,"stem":171,"new":18,"type":19,"children":-1},"Pin Input","/docs/components/pin-input","docs/components/pin-input",{"title":173,"path":174,"stem":175,"new":18,"type":19,"children":-1},"Popover","/docs/components/popover","docs/components/popover",{"title":177,"path":178,"stem":179,"new":18,"type":19,"children":-1},"Progress","/docs/components/progress","docs/components/progress",{"title":181,"path":182,"stem":183,"new":18,"type":19,"children":-1},"Radio Group","/docs/components/radio-group","docs/components/radio-group",{"title":185,"path":186,"stem":187,"new":18,"type":19,"children":-1},"Range Calendar","/docs/components/range-calendar","docs/components/range-calendar",{"title":189,"path":190,"stem":191,"new":18,"type":19,"children":-1},"Resizable","/docs/components/resizable","docs/components/resizable",{"title":193,"path":194,"stem":195,"new":18,"type":19,"children":-1},"Scroll Area","/docs/components/scroll-area","docs/components/scroll-area",{"title":197,"path":198,"stem":199,"new":18,"type":19,"children":-1},"Select","/docs/components/select","docs/components/select",{"title":201,"path":202,"stem":203,"new":18,"type":19,"children":-1},"Separator","/docs/components/separator","docs/components/separator",{"title":205,"path":206,"stem":207,"new":18,"type":19,"children":-1},"Sheet","/docs/components/sheet","docs/components/sheet",{"title":209,"path":210,"stem":211,"new":18,"type":19,"children":-1},"Sidebar","/docs/components/sidebar","docs/components/sidebar",{"title":213,"path":214,"stem":215,"new":18,"type":19,"children":-1},"Skeleton","/docs/components/skeleton","docs/components/skeleton",{"title":217,"path":218,"stem":219,"new":18,"type":19,"children":-1},"Slider","/docs/components/slider","docs/components/slider",{"title":221,"path":222,"stem":223,"new":18,"type":19,"children":-1},"Sonner","/docs/components/sonner","docs/components/sonner",{"title":225,"path":226,"stem":227,"new":18,"type":19,"children":-1},"Spinner","/docs/components/spinner","docs/components/spinner",{"title":229,"path":230,"stem":231,"new":18,"type":19,"children":-1},"Stepper","/docs/components/stepper","docs/components/stepper",{"title":233,"path":234,"stem":235,"new":18,"type":19,"children":-1},"Switch","/docs/components/switch","docs/components/switch",{"title":237,"path":238,"stem":239,"new":18,"type":19,"children":-1},"Table","/docs/components/table","docs/components/table",{"title":241,"path":242,"stem":243,"new":18,"type":19,"children":-1},"Tabs","/docs/components/tabs","docs/components/tabs",{"title":245,"path":246,"stem":247,"new":18,"type":19,"children":-1},"Tags Input","/docs/components/tags-input","docs/components/tags-input",{"title":249,"path":250,"stem":251,"new":18,"type":19,"children":-1},"Textarea","/docs/components/textarea","docs/components/textarea",{"title":253,"path":254,"stem":255,"new":18,"type":19,"children":-1},"Toast","/docs/components/toast","docs/components/toast",{"title":257,"path":258,"stem":259,"new":18,"type":19,"children":-1},"Toggle","/docs/components/toggle","docs/components/toggle",{"title":261,"path":262,"stem":263,"new":18,"type":19,"children":-1},"Toggle Group","/docs/components/toggle-group","docs/components/toggle-group",{"title":265,"path":266,"stem":267,"new":18,"type":19,"children":-1},"Tooltip","/docs/components/tooltip","docs/components/tooltip",{"title":269,"path":270,"stem":271,"new":18,"type":19,"children":-1},"Typography","/docs/components/typography","docs/components/typography","group",{"title":274,"path":275,"stem":276,"children":277,"new":18,"type":272},"Installation","/docs/installation","docs/02.installation",[278,283,287,291,295],{"title":279,"path":280,"stem":281,"new":18,"type":282,"children":-1},"Vite","/docs/installation/vite","docs/installation/01.vite","page",{"title":284,"path":285,"stem":286,"new":18,"type":282,"children":-1},"Nuxt","/docs/installation/nuxt","docs/installation/02.nuxt",{"title":288,"path":289,"stem":290,"new":18,"type":282,"children":-1},"Astro","/docs/installation/astro","docs/installation/03.astro",{"title":292,"path":293,"stem":294,"new":18,"type":282,"children":-1},"Laravel","/docs/installation/laravel","docs/installation/04.laravel",{"title":296,"path":297,"stem":298,"new":18,"type":282,"children":-1},"Manual Installation","/docs/installation/manual","docs/installation/05.manual",{"title":300,"path":301,"stem":302,"children":303,"new":18,"type":272},"Dark Mode","/docs/dark-mode","docs/05.dark-mode",[304,307,310,314],{"title":279,"path":305,"stem":306,"new":18,"type":282,"children":-1},"/docs/dark-mode/vite","docs/dark-mode/01.vite",{"title":284,"path":308,"stem":309,"new":18,"type":282,"children":-1},"/docs/dark-mode/nuxt","docs/dark-mode/02.nuxt",{"title":311,"path":312,"stem":313,"new":18,"type":282,"children":-1},"Vitepress","/docs/dark-mode/vitepress","docs/dark-mode/03.vitepress",{"title":288,"path":315,"stem":316,"new":18,"type":282,"children":-1},"/docs/dark-mode/astro","docs/dark-mode/04.astro",{"title":318,"path":319,"stem":320,"children":321,"new":18,"type":272},"Forms","/docs/forms","docs/forms",[322,326],{"title":323,"path":324,"stem":325,"new":18,"type":282,"children":-1},"VeeValidate","/docs/forms/vee-validate","docs/forms/01.vee-validate",{"title":327,"path":328,"stem":329,"new":18,"type":282,"children":-1},"TanStack Form","/docs/forms/tanstack-form","docs/forms/02.tanstack-form",{"title":331,"path":332,"stem":333,"children":334,"new":18,"type":272},"Registry","/docs/registry","docs/registry/index",[335,336,340,344,348,352],{"title":331,"path":332,"stem":333,"new":18,"type":282,"children":-1},{"title":337,"path":338,"stem":339,"new":18,"type":282,"children":-1},"Examples","/docs/registry/examples","docs/registry/examples",{"title":341,"path":342,"stem":343,"new":18,"type":282,"children":-1},"FAQ","/docs/registry/faq","docs/registry/faq",{"title":345,"path":346,"stem":347,"new":18,"type":282,"children":-1},"Getting Started","/docs/registry/getting-started","docs/registry/getting-started",{"title":349,"path":350,"stem":351,"new":18,"type":282,"children":-1},"registry-item.json","/docs/registry/registry-item-json","docs/registry/registry-item-json",{"title":353,"path":354,"stem":355,"new":18,"type":282,"children":-1},"registry.json","/docs/registry/registry-json","docs/registry/registry-json",{"path":6,"stem":7,"title":357,"type":272,"children":358},"Get Started",[359,363,370,374,378,384,388,392,396,400],{"title":360,"path":361,"stem":362,"new":18,"type":282,"children":-1},"Introduction","/docs/introduction","docs/01.introduction",{"title":274,"path":275,"stem":276,"children":364,"new":18,"type":272},[365,366,367,368,369],{"title":279,"path":280,"stem":281,"new":18,"type":282,"children":-1},{"title":284,"path":285,"stem":286,"new":18,"type":282,"children":-1},{"title":288,"path":289,"stem":290,"new":18,"type":282,"children":-1},{"title":292,"path":293,"stem":294,"new":18,"type":282,"children":-1},{"title":296,"path":297,"stem":298,"new":18,"type":282,"children":-1},{"title":371,"path":372,"stem":373,"new":18,"type":282,"children":-1},"components.json","/docs/components-json","docs/03.components-json",{"title":375,"path":376,"stem":377,"new":18,"type":282,"children":-1},"Theming","/docs/theming","docs/04.theming",{"title":300,"path":301,"stem":302,"children":379,"new":18,"type":272},[380,381,382,383],{"title":279,"path":305,"stem":306,"new":18,"type":282,"children":-1},{"title":284,"path":308,"stem":309,"new":18,"type":282,"children":-1},{"title":311,"path":312,"stem":313,"new":18,"type":282,"children":-1},{"title":288,"path":315,"stem":316,"new":18,"type":282,"children":-1},{"title":385,"path":386,"stem":387,"new":18,"type":282,"children":-1},"CLI","/docs/cli","docs/06.cli",{"title":389,"path":390,"stem":391,"new":18,"type":282,"children":-1},"JavaScript","/docs/javascript","docs/07.javascript",{"title":393,"path":394,"stem":395,"new":18,"type":282,"children":-1},"Figma","/docs/figma","docs/09.figma",{"title":397,"path":398,"stem":399,"new":18,"type":282,"children":-1},"Changelog","/docs/changelog","docs/10.changelog",{"title":401,"path":402,"stem":403,"new":18,"type":282,"children":-1},"Legacy Docs","/docs/legacy","docs/11.legacy",{"repo":405},{"id":406,"name":407,"repo":408,"description":409,"createdAt":410,"updatedAt":411,"pushedAt":412,"stars":413,"watchers":414,"forks":415,"defaultBranch":416},658791894,"shadcn-vue","unovue/shadcn-vue","Vue port of shadcn-ui","2023-06-26T13:53:23Z","2026-04-14T10:18:37Z","2026-04-13T06:37:16Z",9755,38,638,"dev",{"id":418,"title":337,"body":419,"description":806,"extension":807,"links":808,"meta":809,"navigation":810,"new":18,"path":338,"rawbody":811,"seo":812,"stem":339,"__hash__":813},"content/docs/registry/examples.md",{"type":420,"value":421,"toc":776},"minimark",[422,427,432,441,487,498,502,509,512,519,572,578,582,586,593,597,603,609,613,617,623,630,634,637,641,657,663,667,671,678,684,688,694,698,702,709,712,719,723,727,734,738,745,749,756,760,770],[423,424,426],"h2",{"id":425},"registrystyle","registry:style",[428,429,431],"h3",{"id":430},"custom-style-that-extends-shadcn-vue","Custom style that extends shadcn-vue",[433,434,435,436,440],"p",{},"The following registry item is a custom style that extends shadcn-vue. On ",[437,438,439],"code",{},"npx shadcn-vue init",", it will:",[442,443,444,452,463,469,480],"ul",{},[445,446,447,448,451],"li",{},"Install ",[437,449,450],{},"@iconify/vue"," as a dependency.",[445,453,454,455,458,459,462],{},"Add the ",[437,456,457],{},"Login01"," block and ",[437,460,461],{},"calendar"," component to the project.",[445,464,454,465,468],{},[437,466,467],{},"editor"," from a remote registry.",[445,470,471,472,475,476,479],{},"Set the ",[437,473,474],{},"font-sans"," variable to ",[437,477,478],{},"Inter, sans-serif",".",[445,481,482,483,486],{},"Install a ",[437,484,485],{},"brand"," color in light and dark mode.",[488,489,495],"pre",{"className":490,"code":492,"language":493,"meta":494},[491],"language-json","{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"example-style\",\n  \"type\": \"registry:style\",\n  \"dependencies\": [\"@iconify/vue\"],\n  \"registryDependencies\": [\n    \"Login01\",\n    \"calendar\",\n    \"https://example.com/r/editor.json\"\n  ],\n  \"cssVars\": {\n    \"theme\": {\n      \"font-sans\": \"Inter, sans-serif\"\n    },\n    \"light\": {\n      \"brand\": \"20 14.3% 4.1%\"\n    },\n    \"dark\": {\n      \"brand\": \"20 14.3% 4.1%\"\n    }\n  }\n}\n","json","showLineNumbers title=\"example-style.json\"",[437,496,492],{"__ignoreMap":497},"",[428,499,501],{"id":500},"custom-style-from-scratch","Custom style from scratch",[433,503,504,505,508],{},"The following registry item is a custom style that doesn't extend shadcn-vue. See the ",[437,506,507],{},"extends: none"," field.",[433,510,511],{},"It can be used to create a new style from scratch i.e custom components, css vars, dependencies, etc.",[433,513,514,515,518],{},"On ",[437,516,517],{},"npx shadcn-vue add",", the following will:",[442,520,521,531,537,554],{},[445,522,447,523,526,527,530],{},[437,524,525],{},"tailwind-merge"," and ",[437,528,529],{},"clsx"," as dependencies.",[445,532,454,533,536],{},[437,534,535],{},"utils"," registry item from the shadcn-vue registry.",[445,538,454,539,542,543,542,546,549,550,553],{},[437,540,541],{},"button",", ",[437,544,545],{},"input",[437,547,548],{},"label",", and ",[437,551,552],{},"select"," components from a remote registry.",[445,555,556,557,542,560,542,563,542,566,542,569,479],{},"Install new css vars: ",[437,558,559],{},"main",[437,561,562],{},"bg",[437,564,565],{},"border",[437,567,568],{},"text",[437,570,571],{},"ring",[488,573,576],{"className":574,"code":575,"language":493,"meta":494},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"extends\": \"none\",\n  \"name\": \"new-style\",\n  \"type\": \"registry:style\",\n  \"dependencies\": [\"tailwind-merge\", \"clsx\"],\n  \"registryDependencies\": [\n    \"utils\",\n    \"https://example.com/r/button.json\",\n    \"https://example.com/r/input.json\",\n    \"https://example.com/r/label.json\",\n    \"https://example.com/r/select.json\"\n  ],\n  \"cssVars\": {\n    \"theme\": {\n      \"font-sans\": \"Inter, sans-serif\"\n    },\n    \"light\": {\n      \"main\": \"#88aaee\",\n      \"bg\": \"#dfe5f2\",\n      \"border\": \"#000\",\n      \"text\": \"#000\",\n      \"ring\": \"#000\"\n    },\n    \"dark\": {\n      \"main\": \"#88aaee\",\n      \"bg\": \"#272933\",\n      \"border\": \"#000\",\n      \"text\": \"#e6e6e6\",\n      \"ring\": \"#fff\"\n    }\n  }\n}\n",[437,577,575],{"__ignoreMap":497},[423,579,581],{"id":580},"registrytheme","registry:theme",[428,583,585],{"id":584},"custom-theme","Custom theme",[488,587,591],{"className":588,"code":589,"language":493,"meta":590},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-theme\",\n  \"type\": \"registry:theme\",\n  \"cssVars\": {\n    \"light\": {\n      \"background\": \"oklch(1 0 0)\",\n      \"foreground\": \"oklch(0.141 0.005 285.823)\",\n      \"primary\": \"oklch(0.546 0.245 262.881)\",\n      \"primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"ring\": \"oklch(0.746 0.16 232.661)\",\n      \"sidebar-primary\": \"oklch(0.546 0.245 262.881)\",\n      \"sidebar-primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"sidebar-ring\": \"oklch(0.746 0.16 232.661)\"\n    },\n    \"dark\": {\n      \"background\": \"oklch(1 0 0)\",\n      \"foreground\": \"oklch(0.141 0.005 285.823)\",\n      \"primary\": \"oklch(0.707 0.165 254.624)\",\n      \"primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"ring\": \"oklch(0.707 0.165 254.624)\",\n      \"sidebar-primary\": \"oklch(0.707 0.165 254.624)\",\n      \"sidebar-primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"sidebar-ring\": \"oklch(0.707 0.165 254.624)\"\n    }\n  }\n}\n","showLineNumbers title=\"example-theme.json\"",[437,592,589],{"__ignoreMap":497},[428,594,596],{"id":595},"custom-colors","Custom colors",[433,598,599,600,602],{},"The following style will init using shadcn-vue defaults and then add a custom ",[437,601,485],{}," color.",[488,604,607],{"className":605,"code":606,"language":493,"meta":494},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-style\",\n  \"type\": \"registry:style\",\n  \"cssVars\": {\n    \"light\": {\n      \"brand\": \"oklch(0.99 0.00 0)\"\n    },\n    \"dark\": {\n      \"brand\": \"oklch(0.14 0.00 286)\"\n    }\n  }\n}\n",[437,608,606],{"__ignoreMap":497},[423,610,612],{"id":611},"registryblock","registry:block",[428,614,616],{"id":615},"custom-block","Custom block",[433,618,619,620,622],{},"This blocks installs the ",[437,621,457],{}," block from the shadcn-vue registry.",[488,624,628],{"className":625,"code":626,"language":493,"meta":627},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"Login01\",\n  \"type\": \"registry:block\",\n  \"description\": \"A simple login form.\",\n  \"registryDependencies\": [\"button\", \"card\", \"input\", \"label\"],\n  \"files\": [\n    {\n      \"path\": \"blocks/Login01/page.vue\",\n      \"content\": \"import { LoginForm } ...\",\n      \"type\": \"registry:page\",\n      \"target\": \"pages/login/index.vue\"\n    },\n    {\n      \"path\": \"blocks/login-01/components/LoginForm.vue\",\n      \"content\": \"...\",\n      \"type\": \"registry:component\"\n    }\n  ]\n}\n","showLineNumbers title=\"Login01.json\"",[437,629,626],{"__ignoreMap":497},[428,631,633],{"id":632},"install-a-block-and-override-primitives","Install a block and override primitives",[433,635,636],{},"You can install a block fromt the shadcn-vue registry and override the primitives using your custom ones.",[433,638,514,639,518],{},[437,640,517],{},[442,642,643,647],{},[445,644,454,645,622],{},[437,646,457],{},[445,648,649,650,542,652,549,654,656],{},"Override the ",[437,651,541],{},[437,653,545],{},[437,655,548],{}," primitives with the ones from the remote registry.",[488,658,661],{"className":659,"code":660,"language":493,"meta":494},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-login\",\n  \"type\": \"registry:block\",\n  \"registryDependencies\": [\n    \"Login01\",\n    \"https://example.com/r/button.json\",\n    \"https://example.com/r/input.json\",\n    \"https://example.com/r/label.json\"\n  ]\n}\n",[437,662,660],{"__ignoreMap":497},[423,664,666],{"id":665},"css-variables","CSS Variables",[428,668,670],{"id":669},"custom-theme-variables","Custom Theme Variables",[433,672,673,674,677],{},"Add custom theme variables to the ",[437,675,676],{},"theme"," object.",[488,679,682],{"className":680,"code":681,"language":493,"meta":590},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-theme\",\n  \"type\": \"registry:theme\",\n  \"cssVars\": {\n    \"theme\": {\n      \"font-heading\": \"Inter, sans-serif\",\n      \"shadow-card\": \"0 0 0 1px rgba(0, 0, 0, 0.1)\"\n    }\n  }\n}\n",[437,683,681],{"__ignoreMap":497},[428,685,687],{"id":686},"override-tailwind-css-variables","Override Tailwind CSS variables",[488,689,692],{"className":690,"code":691,"language":493,"meta":590},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-theme\",\n  \"type\": \"registry:theme\",\n  \"cssVars\": {\n    \"theme\": {\n      \"spacing\": \"0.2rem\",\n      \"breakpoint-sm\": \"640px\",\n      \"breakpoint-md\": \"768px\",\n      \"breakpoint-lg\": \"1024px\",\n      \"breakpoint-xl\": \"1280px\",\n      \"breakpoint-2xl\": \"1536px\"\n    }\n  }\n}\n",[437,693,691],{"__ignoreMap":497},[423,695,697],{"id":696},"add-custom-css","Add custom CSS",[428,699,701],{"id":700},"base-styles","Base styles",[488,703,707],{"className":704,"code":705,"language":493,"meta":706},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-style\",\n  \"type\": \"registry:style\",\n  \"css\": {\n    \"@layer base\": {\n      \"h1\": {\n        \"font-size\": \"var(--text-2xl)\"\n      },\n      \"h2\": {\n        \"font-size\": \"var(--text-xl)\"\n      }\n    }\n  }\n}\n","showLineNumbers title=\"example-base.json\"",[437,708,705],{"__ignoreMap":497},[428,710,10],{"id":711},"components",[488,713,717],{"className":714,"code":715,"language":493,"meta":716},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-card\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@layer components\": {\n      \"card\": {\n        \"background-color\": \"var(--color-white)\",\n        \"border-radius\": \"var(--rounded-lg)\",\n        \"padding\": \"var(--spacing-6)\",\n        \"box-shadow\": \"var(--shadow-xl)\"\n      }\n    }\n  }\n}\n","showLineNumbers title=\"example-card.json\"",[437,718,715],{"__ignoreMap":497},[423,720,722],{"id":721},"add-custom-utilities","Add custom utilities",[428,724,726],{"id":725},"simple-utility","Simple utility",[488,728,732],{"className":729,"code":730,"language":493,"meta":731},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@utility content-auto\": {\n      \"content-visibility\": \"auto\"\n    }\n  }\n}\n","showLineNumbers title=\"example-component.json\"",[437,733,730],{"__ignoreMap":497},[428,735,737],{"id":736},"complex-utility","Complex utility",[488,739,743],{"className":740,"code":741,"language":493,"meta":742},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@utility scrollbar-hidden\": {\n      \"scrollbar-hidden\": {\n        \"&::-webkit-scrollbar\": {\n          \"display\": \"none\"\n        }\n      }\n    }\n  }\n}\n","showLineNumbers title=\"example-utility.json\"",[437,744,741],{"__ignoreMap":497},[428,746,748],{"id":747},"functional-utilities","Functional utilities",[488,750,754],{"className":751,"code":752,"language":493,"meta":753},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@utility tab-*\": {\n      \"tab-size\": \"var(--tab-size-*)\"\n    }\n  }\n}\n","showLineNumbers title=\"example-functional.json\"",[437,755,752],{"__ignoreMap":497},[423,757,759],{"id":758},"add-custom-animations","Add custom animations",[433,761,762,763,766,767,769],{},"Note: you need to define both ",[437,764,765],{},"@keyframes"," in css and ",[437,768,676],{}," in cssVars to use animations.",[488,771,774],{"className":772,"code":773,"language":493,"meta":731},[491],"{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"cssVars\": {\n    \"theme\": {\n      \"--animate-wiggle\": \"wiggle 1s ease-in-out infinite\"\n    }\n  },\n  \"css\": {\n    \"@keyframes wiggle\": {\n      \"0%, 100%\": {\n        \"transform\": \"rotate(-3deg)\"\n      },\n      \"50%\": {\n        \"transform\": \"rotate(3deg)\"\n      }\n    }\n  }\n}\n",[437,775,773],{"__ignoreMap":497},{"title":497,"searchDepth":777,"depth":777,"links":778},2,[779,784,788,792,796,800,805],{"id":425,"depth":777,"text":426,"children":780},[781,783],{"id":430,"depth":782,"text":431},3,{"id":500,"depth":782,"text":501},{"id":580,"depth":777,"text":581,"children":785},[786,787],{"id":584,"depth":782,"text":585},{"id":595,"depth":782,"text":596},{"id":611,"depth":777,"text":612,"children":789},[790,791],{"id":615,"depth":782,"text":616},{"id":632,"depth":782,"text":633},{"id":665,"depth":777,"text":666,"children":793},[794,795],{"id":669,"depth":782,"text":670},{"id":686,"depth":782,"text":687},{"id":696,"depth":777,"text":697,"children":797},[798,799],{"id":700,"depth":782,"text":701},{"id":711,"depth":782,"text":10},{"id":721,"depth":777,"text":722,"children":801},[802,803,804],{"id":725,"depth":782,"text":726},{"id":736,"depth":782,"text":737},{"id":747,"depth":782,"text":748},{"id":758,"depth":777,"text":759},"Examples of registry items: styles, components, css vars, etc.","md",null,{},true,"---\ntitle: Examples\ndescription: \"Examples of registry items: styles, components, css vars, etc.\"\n---\n\n## registry:style\n\n### Custom style that extends shadcn-vue\n\nThe following registry item is a custom style that extends shadcn-vue. On `npx shadcn-vue init`, it will:\n\n- Install `@iconify/vue` as a dependency.\n- Add the `Login01` block and `calendar` component to the project.\n- Add the `editor` from a remote registry.\n- Set the `font-sans` variable to `Inter, sans-serif`.\n- Install a `brand` color in light and dark mode.\n\n```json showLineNumbers title=\"example-style.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"example-style\",\n  \"type\": \"registry:style\",\n  \"dependencies\": [\"@iconify/vue\"],\n  \"registryDependencies\": [\n    \"Login01\",\n    \"calendar\",\n    \"https://example.com/r/editor.json\"\n  ],\n  \"cssVars\": {\n    \"theme\": {\n      \"font-sans\": \"Inter, sans-serif\"\n    },\n    \"light\": {\n      \"brand\": \"20 14.3% 4.1%\"\n    },\n    \"dark\": {\n      \"brand\": \"20 14.3% 4.1%\"\n    }\n  }\n}\n```\n\n### Custom style from scratch\n\nThe following registry item is a custom style that doesn't extend shadcn-vue. See the `extends: none` field.\n\nIt can be used to create a new style from scratch i.e custom components, css vars, dependencies, etc.\n\nOn `npx shadcn-vue add`, the following will:\n\n- Install `tailwind-merge` and `clsx` as dependencies.\n- Add the `utils` registry item from the shadcn-vue registry.\n- Add the `button`, `input`, `label`, and `select` components from a remote registry.\n- Install new css vars: `main`, `bg`, `border`, `text`, `ring`.\n\n```json showLineNumbers title=\"example-style.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"extends\": \"none\",\n  \"name\": \"new-style\",\n  \"type\": \"registry:style\",\n  \"dependencies\": [\"tailwind-merge\", \"clsx\"],\n  \"registryDependencies\": [\n    \"utils\",\n    \"https://example.com/r/button.json\",\n    \"https://example.com/r/input.json\",\n    \"https://example.com/r/label.json\",\n    \"https://example.com/r/select.json\"\n  ],\n  \"cssVars\": {\n    \"theme\": {\n      \"font-sans\": \"Inter, sans-serif\"\n    },\n    \"light\": {\n      \"main\": \"#88aaee\",\n      \"bg\": \"#dfe5f2\",\n      \"border\": \"#000\",\n      \"text\": \"#000\",\n      \"ring\": \"#000\"\n    },\n    \"dark\": {\n      \"main\": \"#88aaee\",\n      \"bg\": \"#272933\",\n      \"border\": \"#000\",\n      \"text\": \"#e6e6e6\",\n      \"ring\": \"#fff\"\n    }\n  }\n}\n```\n\n## registry:theme\n\n### Custom theme\n\n```json showLineNumbers title=\"example-theme.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-theme\",\n  \"type\": \"registry:theme\",\n  \"cssVars\": {\n    \"light\": {\n      \"background\": \"oklch(1 0 0)\",\n      \"foreground\": \"oklch(0.141 0.005 285.823)\",\n      \"primary\": \"oklch(0.546 0.245 262.881)\",\n      \"primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"ring\": \"oklch(0.746 0.16 232.661)\",\n      \"sidebar-primary\": \"oklch(0.546 0.245 262.881)\",\n      \"sidebar-primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"sidebar-ring\": \"oklch(0.746 0.16 232.661)\"\n    },\n    \"dark\": {\n      \"background\": \"oklch(1 0 0)\",\n      \"foreground\": \"oklch(0.141 0.005 285.823)\",\n      \"primary\": \"oklch(0.707 0.165 254.624)\",\n      \"primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"ring\": \"oklch(0.707 0.165 254.624)\",\n      \"sidebar-primary\": \"oklch(0.707 0.165 254.624)\",\n      \"sidebar-primary-foreground\": \"oklch(0.97 0.014 254.604)\",\n      \"sidebar-ring\": \"oklch(0.707 0.165 254.624)\"\n    }\n  }\n}\n```\n\n### Custom colors\n\nThe following style will init using shadcn-vue defaults and then add a custom `brand` color.\n\n```json showLineNumbers title=\"example-style.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-style\",\n  \"type\": \"registry:style\",\n  \"cssVars\": {\n    \"light\": {\n      \"brand\": \"oklch(0.99 0.00 0)\"\n    },\n    \"dark\": {\n      \"brand\": \"oklch(0.14 0.00 286)\"\n    }\n  }\n}\n```\n\n## registry:block\n\n### Custom block\n\nThis blocks installs the `Login01` block from the shadcn-vue registry.\n\n```json showLineNumbers title=\"Login01.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"Login01\",\n  \"type\": \"registry:block\",\n  \"description\": \"A simple login form.\",\n  \"registryDependencies\": [\"button\", \"card\", \"input\", \"label\"],\n  \"files\": [\n    {\n      \"path\": \"blocks/Login01/page.vue\",\n      \"content\": \"import { LoginForm } ...\",\n      \"type\": \"registry:page\",\n      \"target\": \"pages/login/index.vue\"\n    },\n    {\n      \"path\": \"blocks/login-01/components/LoginForm.vue\",\n      \"content\": \"...\",\n      \"type\": \"registry:component\"\n    }\n  ]\n}\n```\n\n### Install a block and override primitives\n\nYou can install a block fromt the shadcn-vue registry and override the primitives using your custom ones.\n\nOn `npx shadcn-vue add`, the following will:\n\n- Add the `Login01` block from the shadcn-vue registry.\n- Override the `button`, `input`, and `label` primitives with the ones from the remote registry.\n\n```json showLineNumbers title=\"example-style.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-login\",\n  \"type\": \"registry:block\",\n  \"registryDependencies\": [\n    \"Login01\",\n    \"https://example.com/r/button.json\",\n    \"https://example.com/r/input.json\",\n    \"https://example.com/r/label.json\"\n  ]\n}\n```\n\n## CSS Variables\n\n### Custom Theme Variables\n\nAdd custom theme variables to the `theme` object.\n\n```json showLineNumbers title=\"example-theme.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-theme\",\n  \"type\": \"registry:theme\",\n  \"cssVars\": {\n    \"theme\": {\n      \"font-heading\": \"Inter, sans-serif\",\n      \"shadow-card\": \"0 0 0 1px rgba(0, 0, 0, 0.1)\"\n    }\n  }\n}\n```\n\n### Override Tailwind CSS variables\n\n```json showLineNumbers title=\"example-theme.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-theme\",\n  \"type\": \"registry:theme\",\n  \"cssVars\": {\n    \"theme\": {\n      \"spacing\": \"0.2rem\",\n      \"breakpoint-sm\": \"640px\",\n      \"breakpoint-md\": \"768px\",\n      \"breakpoint-lg\": \"1024px\",\n      \"breakpoint-xl\": \"1280px\",\n      \"breakpoint-2xl\": \"1536px\"\n    }\n  }\n}\n```\n\n## Add custom CSS\n\n### Base styles\n\n```json showLineNumbers title=\"example-base.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-style\",\n  \"type\": \"registry:style\",\n  \"css\": {\n    \"@layer base\": {\n      \"h1\": {\n        \"font-size\": \"var(--text-2xl)\"\n      },\n      \"h2\": {\n        \"font-size\": \"var(--text-xl)\"\n      }\n    }\n  }\n}\n```\n\n### Components\n\n```json showLineNumbers title=\"example-card.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-card\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@layer components\": {\n      \"card\": {\n        \"background-color\": \"var(--color-white)\",\n        \"border-radius\": \"var(--rounded-lg)\",\n        \"padding\": \"var(--spacing-6)\",\n        \"box-shadow\": \"var(--shadow-xl)\"\n      }\n    }\n  }\n}\n```\n\n## Add custom utilities\n\n### Simple utility\n\n```json showLineNumbers title=\"example-component.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@utility content-auto\": {\n      \"content-visibility\": \"auto\"\n    }\n  }\n}\n```\n\n### Complex utility\n\n```json showLineNumbers title=\"example-utility.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@utility scrollbar-hidden\": {\n      \"scrollbar-hidden\": {\n        \"&::-webkit-scrollbar\": {\n          \"display\": \"none\"\n        }\n      }\n    }\n  }\n}\n```\n\n### Functional utilities\n\n```json showLineNumbers title=\"example-functional.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"css\": {\n    \"@utility tab-*\": {\n      \"tab-size\": \"var(--tab-size-*)\"\n    }\n  }\n}\n```\n\n## Add custom animations\n\nNote: you need to define both `@keyframes` in css and `theme` in cssVars to use animations.\n\n```json showLineNumbers title=\"example-component.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema/registry-item.json\",\n  \"name\": \"custom-component\",\n  \"type\": \"registry:component\",\n  \"cssVars\": {\n    \"theme\": {\n      \"--animate-wiggle\": \"wiggle 1s ease-in-out infinite\"\n    }\n  },\n  \"css\": {\n    \"@keyframes wiggle\": {\n      \"0%, 100%\": {\n        \"transform\": \"rotate(-3deg)\"\n      },\n      \"50%\": {\n        \"transform\": \"rotate(3deg)\"\n      }\n    }\n  }\n}\n```\n",{"title":337,"description":806},"t6C49e1W2t5IZQWz8_2Fz5lA0jN0eu3orPSM00pHTOg",[815,816],{"title":331,"path":332,"stem":333,"children":-1},{"title":341,"path":342,"stem":343,"children":-1},1776258656638]