[{"data":1,"prerenderedAt":834},["ShallowReactive",2],{"navigation":3,"$fMW9jOOkNpZriWVK3P_bZYNOyYR2IEPvrHsC7cDBlJJc":404,"/docs/components-json":417,"surround-/docs/components-json":831},[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":371,"body":419,"description":823,"extension":824,"links":825,"meta":826,"navigation":827,"new":18,"path":372,"rawbody":828,"seo":829,"stem":373,"__hash__":830},"content/docs/03.components-json.md",{"type":420,"value":421,"toc":802},"minimark",[422,430,433,447,453,463,471,476,489,498,501,507,513,523,526,529,535,540,550,556,560,563,569,573,578,584,588,591,606,612,619,624,628,631,637,640,643,653,659,662,677,684,704,708,711,717,721,724,730,734,741,752,758,762,774,780,784,796],[423,424,425,426,429],"p",{},"The ",[427,428,371],"code",{}," file holds configuration for your project.",[423,431,432],{},"We use it to understand how your project is set up and how to generate components customized for your project.",[434,435,439],"callout",{"className":436,"title":438},[437],"mt-6","Note: The `components.json` file is optional",[423,440,441,442,446],{},"It is ",[443,444,445],"strong",{},"only required if you're using the CLI"," to add components to your\nproject. If you're using the copy and paste method, you don't need this file.",[423,448,449,450,452],{},"You can create a ",[427,451,371],{}," file in your project by running the following command:",[454,455,461],"pre",{"className":456,"code":458,"language":459,"meta":460},[457],"language-bash","npx shadcn-vue@latest init\n","bash","",[427,462,458],{"__ignoreMap":460},[423,464,465,466,470],{},"See the ",[467,468,469],"a",{"href":386},"CLI section"," for more information.",[472,473,475],"h2",{"id":474},"schema","$schema",[423,477,478,479,481,482,488],{},"You can see the JSON Schema for ",[427,480,371],{}," ",[467,483,487],{"href":484,"rel":485},"https://shadcn-vue.com/schema.json",[486],"nofollow","here",".",[454,490,496],{"className":491,"code":493,"language":494,"meta":495},[492],"language-json","{\n  \"$schema\": \"https://shadcn-vue.com/schema.json\"\n}\n","json","title=\"components.json\"",[427,497,493],{"__ignoreMap":460},[472,499,500],{"id":500},"style",[423,502,503,504],{},"The style for your components. ",[443,505,506],{},"This cannot be changed after initialization.",[454,508,511],{"className":509,"code":510,"language":494,"meta":495},[492],"{\n  \"style\": \"new-york\"\n}\n",[427,512,510],{"__ignoreMap":460},[423,514,425,515,518,519,522],{},[427,516,517],{},"default"," style has been deprecated. Use the ",[427,520,521],{},"new-york"," style instead.",[472,524,525],{"id":525},"tailwind",[423,527,528],{},"Configuration to help the CLI understand how Tailwind CSS is set up in your project.",[423,530,465,531,534],{},[467,532,533],{"href":275},"installation section"," for how to set up Tailwind CSS.",[536,537,539],"h3",{"id":538},"tailwindconfig","tailwind.config",[423,541,542,543,546,547],{},"Path to where your ",[427,544,545],{},"tailwind.config.js"," file is located. ",[443,548,549],{},"For Tailwind CSS v4, leave this blank.",[454,551,554],{"className":552,"code":553,"language":494,"meta":495},[492],"{\n  \"tailwind\": {\n    \"config\": \"tailwind.config.js\" | \"tailwind.config.ts\"\n  }\n}\n",[427,555,553],{"__ignoreMap":460},[536,557,559],{"id":558},"tailwindcss","tailwind.css",[423,561,562],{},"Path to the CSS file that imports Tailwind CSS into your project.",[454,564,567],{"className":565,"code":566,"language":494,"meta":495},[492],"{\n  \"tailwind\": {\n    \"css\": \"styles/global.css\"\n  }\n}\n",[427,568,566],{"__ignoreMap":460},[536,570,572],{"id":571},"tailwindbasecolor","tailwind.baseColor",[423,574,575,576],{},"This is used to generate the default color palette for your components. ",[443,577,506],{},[454,579,582],{"className":580,"code":581,"language":494,"meta":495},[492],"{\n  \"tailwind\": {\n    \"baseColor\": \"gray\" | \"neutral\" | \"slate\" | \"stone\" | \"zinc\"\n  }\n}\n",[427,583,581],{"__ignoreMap":460},[536,585,587],{"id":586},"tailwindcssvariables","tailwind.cssVariables",[423,589,590],{},"You can choose between using CSS variables or Tailwind CSS utility classes for theming.",[423,592,593,594,596,597,600,601,596,603,488],{},"To use utility classes for theming set ",[427,595,587],{}," to ",[427,598,599],{},"false",". For CSS variables, set ",[427,602,587],{},[427,604,605],{},"true",[454,607,610],{"className":608,"code":609,"language":494,"meta":495},[492],"{\n  \"tailwind\": {\n    \"cssVariables\": `true` | `false`\n  }\n}\n",[427,611,609],{"__ignoreMap":460},[423,613,614,615,618],{},"For more information, see the ",[616,617],"link",{"href":376},"theming docs.",[423,620,621,623],{},[443,622,506],{}," To switch between CSS variables and utility classes, you'll have to delete and re-install your components.",[536,625,627],{"id":626},"tailwindprefix","tailwind.prefix",[423,629,630],{},"The prefix to use for your Tailwind CSS utility classes. Components will be added with this prefix.",[454,632,635],{"className":633,"code":634,"language":494,"meta":495},[492],"{\n  \"tailwind\": {\n    \"prefix\": \"tw-\"\n  }\n}\n",[427,636,634],{"__ignoreMap":460},[472,638,639],{"id":639},"typescript",[423,641,642],{},"Choose between TypeScript or JavaScript components.",[423,644,645,646,648,649,652],{},"Setting this option to ",[427,647,599],{}," allows components to be added as JavaScript in ",[427,650,651],{},".vue"," file.",[454,654,657],{"className":655,"code":656,"language":494,"meta":495},[492],"{\n  \"typescript\": `true` | `false`\n}\n",[427,658,656],{"__ignoreMap":460},[472,660,661],{"id":661},"aliases",[423,663,664,665,668,669,672,673,676],{},"The CLI uses these values and the ",[427,666,667],{},"paths"," config from your ",[427,670,671],{},"tsconfig.json"," or ",[427,674,675],{},"jsconfig.json"," file to place generated components in the correct location.",[423,678,679,680,672,682,652],{},"Path aliases have to be set up in your ",[427,681,671],{},[427,683,675],{},[434,685,687],{"className":686},[437],[423,688,689,692,693,696,697,699,700,672,702,652],{},[443,690,691],{},"Important:"," If you're using the ",[427,694,695],{},"src"," directory, make sure it is included\nunder ",[427,698,667],{}," in your ",[427,701,671],{},[427,703,675],{},[536,705,707],{"id":706},"aliasesutils","aliases.utils",[423,709,710],{},"Import alias for your utility functions.",[454,712,715],{"className":713,"code":714,"language":494,"meta":495},[492],"{\n  \"aliases\": {\n    \"utils\": \"@/lib/utils\"\n  }\n}\n",[427,716,714],{"__ignoreMap":460},[536,718,720],{"id":719},"aliasescomponents","aliases.components",[423,722,723],{},"Import alias for your components.",[454,725,728],{"className":726,"code":727,"language":494,"meta":495},[492],"{\n  \"aliases\": {\n    \"components\": \"@/components\"\n  }\n}\n",[427,729,727],{"__ignoreMap":460},[536,731,733],{"id":732},"aliasesui","aliases.ui",[423,735,736,737,740],{},"Import alias for ",[427,738,739],{},"ui"," components.",[423,742,743,744,746,747,749,750,740],{},"The CLI will use the ",[427,745,733],{}," value to determine where to place your ",[427,748,739],{}," components. Use this config if you want to customize the installation directory for your ",[427,751,739],{},[454,753,756],{"className":754,"code":755,"language":494,"meta":495},[492],"{\n  \"aliases\": {\n    \"ui\": \"@/app/ui\"\n  }\n}\n",[427,757,755],{"__ignoreMap":460},[536,759,761],{"id":760},"aliaseslib","aliases.lib",[423,763,736,764,767,768,672,771,488],{},[427,765,766],{},"lib"," functions such as ",[427,769,770],{},"cn",[427,772,773],{},"valueUpdater",[454,775,778],{"className":776,"code":777,"language":494,"meta":495},[492],"{\n  \"aliases\": {\n    \"lib\": \"@/lib\"\n  }\n}\n",[427,779,777],{"__ignoreMap":460},[536,781,783],{"id":782},"aliasescomposables","aliases.composables",[423,785,736,786,789,790,672,793,488],{},[427,787,788],{},"composables"," such as ",[427,791,792],{},"useMediaQuery",[427,794,795],{},"useToast",[454,797,800],{"className":798,"code":799,"language":494,"meta":495},[492],"{\n  \"aliases\": {\n    \"composables\": \"@/composables\"\n  }\n}\n",[427,801,799],{"__ignoreMap":460},{"title":460,"searchDepth":803,"depth":803,"links":804},2,[805,806,807,815,816],{"id":474,"depth":803,"text":475},{"id":500,"depth":803,"text":500},{"id":525,"depth":803,"text":525,"children":808},[809,811,812,813,814],{"id":538,"depth":810,"text":539},3,{"id":558,"depth":810,"text":559},{"id":571,"depth":810,"text":572},{"id":586,"depth":810,"text":587},{"id":626,"depth":810,"text":627},{"id":639,"depth":803,"text":639},{"id":661,"depth":803,"text":661,"children":817},[818,819,820,821,822],{"id":706,"depth":810,"text":707},{"id":719,"depth":810,"text":720},{"id":732,"depth":810,"text":733},{"id":760,"depth":810,"text":761},{"id":782,"depth":810,"text":783},"Configuration for your project.","md",null,{},true,"---\ntitle: components.json\ndescription: Configuration for your project.\n---\n\nThe `components.json` file holds configuration for your project.\n\nWe use it to understand how your project is set up and how to generate components customized for your project.\n\n\u003CCallout class=\"mt-6\" title=\"Note: The `components.json` file is optional\">\n\n  It is **only required if you're using the CLI** to add components to your\n  project. If you're using the copy and paste method, you don't need this file.\n\n\u003C/Callout>\n\nYou can create a `components.json` file in your project by running the following command:\n\n```bash\nnpx shadcn-vue@latest init\n```\n\nSee the [CLI section](/docs/cli) for more information.\n\n## $schema\n\nYou can see the JSON Schema for `components.json` [here](https://shadcn-vue.com/schema.json).\n\n```json title=\"components.json\"\n{\n  \"$schema\": \"https://shadcn-vue.com/schema.json\"\n}\n```\n\n## style\n\nThe style for your components. **This cannot be changed after initialization.**\n\n```json title=\"components.json\"\n{\n  \"style\": \"new-york\"\n}\n```\n\nThe `default` style has been deprecated. Use the `new-york` style instead.\n\n## tailwind\n\nConfiguration to help the CLI understand how Tailwind CSS is set up in your project.\n\nSee the \u003Ca href=\"/docs/installation\">installation section\u003C/a> for how to set up Tailwind CSS.\n\n### tailwind.config\n\nPath to where your `tailwind.config.js` file is located. **For Tailwind CSS v4, leave this blank.**\n\n```json title=\"components.json\"\n{\n  \"tailwind\": {\n    \"config\": \"tailwind.config.js\" | \"tailwind.config.ts\"\n  }\n}\n```\n\n### tailwind.css\n\nPath to the CSS file that imports Tailwind CSS into your project.\n\n```json title=\"components.json\"\n{\n  \"tailwind\": {\n    \"css\": \"styles/global.css\"\n  }\n}\n```\n\n### tailwind.baseColor\n\nThis is used to generate the default color palette for your components. **This cannot be changed after initialization.**\n\n```json title=\"components.json\"\n{\n  \"tailwind\": {\n    \"baseColor\": \"gray\" | \"neutral\" | \"slate\" | \"stone\" | \"zinc\"\n  }\n}\n```\n\n### tailwind.cssVariables\n\nYou can choose between using CSS variables or Tailwind CSS utility classes for theming.\n\nTo use utility classes for theming set `tailwind.cssVariables` to `false`. For CSS variables, set `tailwind.cssVariables` to `true`.\n\n```json title=\"components.json\"\n{\n  \"tailwind\": {\n    \"cssVariables\": `true` | `false`\n  }\n}\n```\n\nFor more information, see the \u003CLink href=\"/docs/theming\">theming docs\u003C/Link>.\n\n**This cannot be changed after initialization.** To switch between CSS variables and utility classes, you'll have to delete and re-install your components.\n\n### tailwind.prefix\n\nThe prefix to use for your Tailwind CSS utility classes. Components will be added with this prefix.\n\n```json title=\"components.json\"\n{\n  \"tailwind\": {\n    \"prefix\": \"tw-\"\n  }\n}\n```\n\n## typescript\n\nChoose between TypeScript or JavaScript components.\n\nSetting this option to `false` allows components to be added as JavaScript in `.vue` file.\n\n```json title=\"components.json\"\n{\n  \"typescript\": `true` | `false`\n}\n```\n\n## aliases\n\nThe CLI uses these values and the `paths` config from your `tsconfig.json` or `jsconfig.json` file to place generated components in the correct location.\n\nPath aliases have to be set up in your `tsconfig.json` or `jsconfig.json` file.\n\n\u003CCallout class=\"mt-6\">\n\n  **Important:** If you're using the `src` directory, make sure it is included\n  under `paths` in your `tsconfig.json` or `jsconfig.json` file.\n\n\u003C/Callout>\n\n### aliases.utils\n\nImport alias for your utility functions.\n\n```json title=\"components.json\"\n{\n  \"aliases\": {\n    \"utils\": \"@/lib/utils\"\n  }\n}\n```\n\n### aliases.components\n\nImport alias for your components.\n\n```json title=\"components.json\"\n{\n  \"aliases\": {\n    \"components\": \"@/components\"\n  }\n}\n```\n\n### aliases.ui\n\nImport alias for `ui` components.\n\nThe CLI will use the `aliases.ui` value to determine where to place your `ui` components. Use this config if you want to customize the installation directory for your `ui` components.\n\n```json title=\"components.json\"\n{\n  \"aliases\": {\n    \"ui\": \"@/app/ui\"\n  }\n}\n```\n\n### aliases.lib\n\nImport alias for `lib` functions such as `cn` or `valueUpdater`.\n\n```json title=\"components.json\"\n{\n  \"aliases\": {\n    \"lib\": \"@/lib\"\n  }\n}\n```\n\n### aliases.composables\n\nImport alias for `composables` such as `useMediaQuery` or `useToast`.\n\n```json title=\"components.json\"\n{\n  \"aliases\": {\n    \"composables\": \"@/composables\"\n  }\n}\n```\n",{"title":371,"description":823},"aptPgj4ybeysPekgHiFkUuJCOHRLwgkm7MWGlTFErBI",[832,833],{"title":296,"path":297,"stem":298,"children":-1},{"title":375,"path":376,"stem":377,"children":-1},1776258656922]