@wordup-md/nuxt-layer-shadcn-unocss 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (359) hide show
  1. package/.cursor/rules/active-context-rule.mdc +8 -0
  2. package/.cursor/rules/memory-bank-overview.mdc +17 -0
  3. package/.cursor/rules/product-context-rule.mdc +8 -0
  4. package/.cursor/rules/progress-rule.mdc +8 -0
  5. package/.cursor/rules/projectbrief-rule.mdc +8 -0
  6. package/.cursor/rules/system-patterns-rule.mdc +8 -0
  7. package/.cursor/rules/tech-context-rule.mdc +8 -0
  8. package/.cursorrules +52 -0
  9. package/.editorconfig +12 -0
  10. package/.nuxtrc +1 -0
  11. package/.playground/app.config.ts +189 -0
  12. package/.playground/assets/style.css +15 -0
  13. package/.playground/components/content/MdcExample.vue +81 -0
  14. package/.playground/components/content/MdcReplay.vue +319 -0
  15. package/.playground/content/1.getting-started/1.introduction.md +8 -0
  16. package/.playground/content/1.getting-started/2.writing/1.markdown.md +56 -0
  17. package/.playground/content/1.getting-started/2.writing/2.pages.md +177 -0
  18. package/.playground/content/1.getting-started/2.writing/3.folders.md +56 -0
  19. package/.playground/content/1.getting-started/2.writing/_dir.yml +3 -0
  20. package/.playground/content/1.getting-started/_dir.yml +3 -0
  21. package/.playground/content/2.content-elements/1.text-formatting.md +60 -0
  22. package/.playground/content/2.content-elements/10.horizontal-rule.md +25 -0
  23. package/.playground/content/2.content-elements/11.tables.md +25 -0
  24. package/.playground/content/2.content-elements/12.overview.md +93 -0
  25. package/.playground/content/2.content-elements/13.text-components.md +36 -0
  26. package/.playground/content/2.content-elements/2.headings.md +32 -0
  27. package/.playground/content/2.content-elements/3.paragraphs.md +39 -0
  28. package/.playground/content/2.content-elements/4.lists.md +37 -0
  29. package/.playground/content/2.content-elements/5.links.md +17 -0
  30. package/.playground/content/2.content-elements/6.images.md +17 -0
  31. package/.playground/content/2.content-elements/7.blockquotes.md +17 -0
  32. package/.playground/content/2.content-elements/8.code-blocks.md +141 -0
  33. package/.playground/content/2.content-elements/9.inline-code.md +21 -0
  34. package/.playground/content/2.content-elements/_dir.yml +3 -0
  35. package/.playground/content/2.content-elements/index.md +8 -0
  36. package/.playground/content/3.components/1.index.md +187 -0
  37. package/.playground/content/3.components/2.docs/_dir.yml +3 -0
  38. package/.playground/content/3.components/2.docs/alert.md +152 -0
  39. package/.playground/content/3.components/2.docs/badge.md +131 -0
  40. package/.playground/content/3.components/2.docs/button-link.md +53 -0
  41. package/.playground/content/3.components/2.docs/callout.md +16 -0
  42. package/.playground/content/3.components/2.docs/code-group.md +77 -0
  43. package/.playground/content/3.components/2.docs/code-snippet.md +129 -0
  44. package/.playground/content/3.components/2.docs/field-group.md +62 -0
  45. package/.playground/content/3.components/2.docs/field.md +39 -0
  46. package/.playground/content/3.components/2.docs/file-tree.md +144 -0
  47. package/.playground/content/3.components/2.docs/icon.md +94 -0
  48. package/.playground/content/3.components/2.docs/pm.md +67 -0
  49. package/.playground/content/3.components/2.docs/read-more.md +44 -0
  50. package/.playground/content/3.components/2.docs/shortcut.md +36 -0
  51. package/.playground/content/3.components/2.docs/stack.md +81 -0
  52. package/.playground/content/3.components/2.docs/steps.md +148 -0
  53. package/.playground/content/3.components/2.docs/tabs.md +375 -0
  54. package/.playground/content/3.components/3.page/_dir.yml +2 -0
  55. package/.playground/content/3.components/3.page/accordion.md +74 -0
  56. package/.playground/content/3.components/3.page/card-group.md +115 -0
  57. package/.playground/content/3.components/3.page/card.md +142 -0
  58. package/.playground/content/3.components/3.page/collapsible.md +61 -0
  59. package/.playground/content/3.components/3.page/hero-alt.md +118 -0
  60. package/.playground/content/3.components/3.page/hero.md +60 -0
  61. package/.playground/content/3.components/3.page/team-card.md +82 -0
  62. package/.playground/content/3.components/_dir.yml +2 -0
  63. package/.playground/content/4.development/1.configuration/1.overview.md +297 -0
  64. package/.playground/content/4.development/1.configuration/2.nuxt-content.md +105 -0
  65. package/.playground/content/4.development/1.configuration/3.og-image.md +86 -0
  66. package/.playground/content/4.development/1.configuration/4.edit-link.md +63 -0
  67. package/.playground/content/4.development/1.configuration/5.banner.md +52 -0
  68. package/.playground/content/4.development/1.configuration/6.carbon-ads.md +65 -0
  69. package/.playground/content/4.development/1.configuration/7.umami.md +41 -0
  70. package/.playground/content/4.development/1.configuration/_dir.yml +3 -0
  71. package/.playground/content/4.development/2.advanced/1.override.md +49 -0
  72. package/.playground/content/4.development/2.advanced/2.math.md +89 -0
  73. package/.playground/content/4.development/2.advanced/_dir.yml +3 -0
  74. package/.playground/content/4.development/3.themes.md +9 -0
  75. package/.playground/content/4.development/4.composables.md +38 -0
  76. package/.playground/content/4.development/5.installation.md +36 -0
  77. package/.playground/content/4.development/_dir.yml +3 -0
  78. package/.playground/content/_menu-footer.md +5 -0
  79. package/.playground/content/index.md +67 -0
  80. package/.playground/content/test-card.md +187 -0
  81. package/.playground/content/test.md +88 -0
  82. package/.playground/content/test2.md +12 -0
  83. package/.playground/content/test3.md +187 -0
  84. package/.playground/nuxt.config.ts +52 -0
  85. package/.playground/public/banner-preview.png +0 -0
  86. package/.playground/public/favicon.ico +0 -0
  87. package/.playground/public/front-matter-showcase/authors.png +0 -0
  88. package/.playground/public/front-matter-showcase/badges.png +0 -0
  89. package/.playground/public/front-matter-showcase/nav-badges.png +0 -0
  90. package/.playground/public/hero.png +0 -0
  91. package/.playground/public/logo-dark.svg +12 -0
  92. package/.playground/public/logo.svg +12 -0
  93. package/.playground/public/og-nuxt-seo.png +0 -0
  94. package/.playground/public/og-nuxt.png +0 -0
  95. package/.playground/public/og-shadcn-docs-dark.png +0 -0
  96. package/.playground/public/og-shadcn-docs.png +0 -0
  97. package/.playground/public/sidebar-default.png +0 -0
  98. package/.playground/public/sidebar-group.png +0 -0
  99. package/.playground/public/sidebar-tree.png +0 -0
  100. package/.playground/uno.config.ts +16 -0
  101. package/README.md +93 -0
  102. package/app.vue +59 -0
  103. package/assets/css/a11y.css +48 -0
  104. package/assets/css/mdc-editor.css +91 -0
  105. package/components/A11yModeToggle.vue +23 -0
  106. package/components/DarkModeToggle.vue +26 -0
  107. package/components/LinkIcon.vue +32 -0
  108. package/components/OgImage/ShadcnDocs.vue +55 -0
  109. package/components/ThemeCustomizer.vue +156 -0
  110. package/components/ThemePopover.vue +27 -0
  111. package/components/content/Accordion.vue +18 -0
  112. package/components/content/AccordionItem.vue +32 -0
  113. package/components/content/Alert.vue +100 -0
  114. package/components/content/Badge.vue +52 -0
  115. package/components/content/ButtonLink.vue +38 -0
  116. package/components/content/Callout.vue +17 -0
  117. package/components/content/Card.vue +173 -0
  118. package/components/content/CardGroup.vue +38 -0
  119. package/components/content/CodeCopy.vue +52 -0
  120. package/components/content/CodeGroup._vue +27 -0
  121. package/components/content/CodeSnippet._vue +78 -0
  122. package/components/content/Collapsible.vue +80 -0
  123. package/components/content/Field.vue +53 -0
  124. package/components/content/FieldGroup.vue +5 -0
  125. package/components/content/FileTree.vue +110 -0
  126. package/components/content/FileTreeItem.vue +64 -0
  127. package/components/content/FileTreeRoot.vue +27 -0
  128. package/components/content/Hero.vue +154 -0
  129. package/components/content/HeroAlt.vue +116 -0
  130. package/components/content/Icon.vue +69 -0
  131. package/components/content/Kbd.vue +20 -0
  132. package/components/content/PmInstall.vue +35 -0
  133. package/components/content/PmRun.vue +31 -0
  134. package/components/content/PmX.vue +31 -0
  135. package/components/content/ProseA.vue +21 -0
  136. package/components/content/ProseBlockquote.vue +5 -0
  137. package/components/content/ProseCode.vue +121 -0
  138. package/components/content/ProseCodeInline.vue +24 -0
  139. package/components/content/ProseEm.vue +5 -0
  140. package/components/content/ProseH1.vue +27 -0
  141. package/components/content/ProseH2.vue +22 -0
  142. package/components/content/ProseH3.vue +21 -0
  143. package/components/content/ProseH4.vue +21 -0
  144. package/components/content/ProseH5.vue +21 -0
  145. package/components/content/ProseH6.vue +21 -0
  146. package/components/content/ProseHr.vue +3 -0
  147. package/components/content/ProseImg.vue +42 -0
  148. package/components/content/ProseLi.vue +5 -0
  149. package/components/content/ProseOl.vue +5 -0
  150. package/components/content/ProseP.vue +5 -0
  151. package/components/content/ProsePre.vue +56 -0
  152. package/components/content/ProseSection.vue +27 -0
  153. package/components/content/ProseStrong.vue +5 -0
  154. package/components/content/ProseTable.vue +7 -0
  155. package/components/content/ProseTbody.vue +5 -0
  156. package/components/content/ProseTd.vue +5 -0
  157. package/components/content/ProseTh.vue +5 -0
  158. package/components/content/ProseThead.vue +5 -0
  159. package/components/content/ProseTr.vue +5 -0
  160. package/components/content/ProseUl.vue +5 -0
  161. package/components/content/ReadMore.vue +41 -0
  162. package/components/content/Shortcut.vue +20 -0
  163. package/components/content/Stack.vue +17 -0
  164. package/components/content/Steps.vue +23 -0
  165. package/components/content/Tabs.vue +52 -0
  166. package/components/content/TabsInner.vue +263 -0
  167. package/components/content/TeamCard.vue +52 -0
  168. package/components/content/TeamCardGroup.vue +5 -0
  169. package/components/content/global/AlertEditor.vue +58 -0
  170. package/components/content/global/BadgeEditor.vue +56 -0
  171. package/components/content/global/BrEditor.vue +3 -0
  172. package/components/content/global/CardEditor.vue +142 -0
  173. package/components/content/global/CardGroupEditor.vue +50 -0
  174. package/components/content/global/CodeGroup.vue +13 -0
  175. package/components/content/global/CodeGroupEditor.vue +50 -0
  176. package/components/content/global/DivEditor.vue +22 -0
  177. package/components/content/global/FieldEditor.vue +38 -0
  178. package/components/content/global/FieldGroupEditor.vue +24 -0
  179. package/components/content/global/HeroEditor.vue +67 -0
  180. package/components/content/global/ProseSectionEditor.vue +180 -0
  181. package/components/content/global/ReadMoreEditor.vue +70 -0
  182. package/components/content/global/SectionEditor.vue +22 -0
  183. package/components/content/global/StackEditor.vue +35 -0
  184. package/components/content/global/StepsEditor.vue +55 -0
  185. package/components/content/global/Tabs._vue +97 -0
  186. package/components/content/global/TabsEditor.vue +38 -0
  187. package/components/layout/Aside.vue +83 -0
  188. package/components/layout/AsideTree.vue +25 -0
  189. package/components/layout/AsideTreeItem.vue +86 -0
  190. package/components/layout/AsideTreeItemButton.vue +32 -0
  191. package/components/layout/Banner.vue +77 -0
  192. package/components/layout/Breadcrumb.vue +34 -0
  193. package/components/layout/DocsFooter.vue +6 -0
  194. package/components/layout/EditLink.vue +23 -0
  195. package/components/layout/Footer.vue +80 -0
  196. package/components/layout/FooterItem.vue +50 -0
  197. package/components/layout/FooterSubmenuItem.vue +39 -0
  198. package/components/layout/Header/Logo.vue +30 -0
  199. package/components/layout/Header/MenuItem.vue +83 -0
  200. package/components/layout/Header/Nav.vue +112 -0
  201. package/components/layout/Header/NavMobile.vue +14 -0
  202. package/components/layout/Header/NavMobileItem.vue +79 -0
  203. package/components/layout/Header/SubmenuItem.vue +39 -0
  204. package/components/layout/Header.vue +160 -0
  205. package/components/layout/LangSwitcher.vue +90 -0
  206. package/components/layout/MobileNav.vue +44 -0
  207. package/components/layout/PrevNext.vue +24 -0
  208. package/components/layout/PrevNextButton.vue +50 -0
  209. package/components/layout/SearchButton.vue +46 -0
  210. package/components/layout/SearchDialog.vue +217 -0
  211. package/components/layout/Title.vue +98 -0
  212. package/components/layout/Toc.vue +99 -0
  213. package/components/layout/TocTree.vue +42 -0
  214. package/components/ui/accordion/Accordion.vue +19 -0
  215. package/components/ui/accordion/AccordionContent.vue +24 -0
  216. package/components/ui/accordion/AccordionItem.vue +24 -0
  217. package/components/ui/accordion/AccordionTrigger.vue +39 -0
  218. package/components/ui/accordion/index.ts +4 -0
  219. package/components/ui/alert/Alert.vue +19 -0
  220. package/components/ui/alert/AlertDescription.vue +14 -0
  221. package/components/ui/alert/AlertTitle.vue +14 -0
  222. package/components/ui/alert/index.ts +23 -0
  223. package/components/ui/avatar/Avatar.vue +25 -0
  224. package/components/ui/avatar/AvatarFallback.vue +11 -0
  225. package/components/ui/avatar/AvatarImage.vue +12 -0
  226. package/components/ui/avatar/index.ts +24 -0
  227. package/components/ui/badge/Badge.vue +17 -0
  228. package/components/ui/badge/index.ts +71 -0
  229. package/components/ui/breadcrumb/Breadcrumb.vue +16 -0
  230. package/components/ui/breadcrumb/BreadcrumbItem.vue +16 -0
  231. package/components/ui/breadcrumb/BreadcrumbLink.vue +23 -0
  232. package/components/ui/breadcrumb/BreadcrumbList.vue +16 -0
  233. package/components/ui/breadcrumb/BreadcrumbPage.vue +19 -0
  234. package/components/ui/breadcrumb/BreadcrumbSeparator.vue +23 -0
  235. package/components/ui/breadcrumb/index.ts +6 -0
  236. package/components/ui/button/Button.vue +29 -0
  237. package/components/ui/button/index.ts +35 -0
  238. package/components/ui/card/Card.vue +21 -0
  239. package/components/ui/card/CardContent.vue +14 -0
  240. package/components/ui/card/CardDescription.vue +14 -0
  241. package/components/ui/card/CardFooter.vue +14 -0
  242. package/components/ui/card/CardHeader.vue +14 -0
  243. package/components/ui/card/CardTitle.vue +18 -0
  244. package/components/ui/card/index.ts +6 -0
  245. package/components/ui/collapsible/Collapsible.vue +18 -0
  246. package/components/ui/collapsible/CollapsibleContent.vue +14 -0
  247. package/components/ui/collapsible/CollapsibleTrigger.vue +11 -0
  248. package/components/ui/collapsible/index.ts +3 -0
  249. package/components/ui/command/Command.vue +89 -0
  250. package/components/ui/command/CommandEmpty.vue +30 -0
  251. package/components/ui/command/CommandGroup.vue +50 -0
  252. package/components/ui/command/CommandInput.vue +44 -0
  253. package/components/ui/command/CommandInputOnly.vue +50 -0
  254. package/components/ui/command/CommandItem.vue +79 -0
  255. package/components/ui/command/CommandList.vue +28 -0
  256. package/components/ui/command/CommandSeparator.vue +24 -0
  257. package/components/ui/command/index.ts +24 -0
  258. package/components/ui/dialog/Dialog.vue +14 -0
  259. package/components/ui/dialog/DialogClose.vue +11 -0
  260. package/components/ui/dialog/DialogContent.vue +52 -0
  261. package/components/ui/dialog/DialogDescription.vue +24 -0
  262. package/components/ui/dialog/DialogFooter.vue +19 -0
  263. package/components/ui/dialog/DialogHeader.vue +16 -0
  264. package/components/ui/dialog/DialogScrollContent.vue +61 -0
  265. package/components/ui/dialog/DialogTitle.vue +29 -0
  266. package/components/ui/dialog/DialogTrigger.vue +11 -0
  267. package/components/ui/dialog/index.ts +9 -0
  268. package/components/ui/input/Input.vue +27 -0
  269. package/components/ui/input/index.ts +1 -0
  270. package/components/ui/label/Label.vue +27 -0
  271. package/components/ui/label/index.ts +1 -0
  272. package/components/ui/navigation-menu/NavigationMenu.vue +33 -0
  273. package/components/ui/navigation-menu/NavigationMenuContent.vue +34 -0
  274. package/components/ui/navigation-menu/NavigationMenuIndicator.vue +24 -0
  275. package/components/ui/navigation-menu/NavigationMenuItem.vue +11 -0
  276. package/components/ui/navigation-menu/NavigationMenuLink.vue +19 -0
  277. package/components/ui/navigation-menu/NavigationMenuList.vue +33 -0
  278. package/components/ui/navigation-menu/NavigationMenuTrigger.vue +34 -0
  279. package/components/ui/navigation-menu/NavigationMenuViewport.vue +33 -0
  280. package/components/ui/navigation-menu/index.ts +14 -0
  281. package/components/ui/popover/Popover.vue +15 -0
  282. package/components/ui/popover/PopoverContent.vue +49 -0
  283. package/components/ui/popover/PopoverTrigger.vue +11 -0
  284. package/components/ui/popover/index.ts +4 -0
  285. package/components/ui/scroll-area/ScrollArea.vue +32 -0
  286. package/components/ui/scroll-area/ScrollBar.vue +41 -0
  287. package/components/ui/scroll-area/index.ts +2 -0
  288. package/components/ui/separator/Separator.vue +20 -0
  289. package/components/ui/separator/index.ts +1 -0
  290. package/components/ui/sheet/Sheet.vue +14 -0
  291. package/components/ui/sheet/SheetClose.vue +11 -0
  292. package/components/ui/sheet/SheetContent.vue +58 -0
  293. package/components/ui/sheet/SheetDescription.vue +22 -0
  294. package/components/ui/sheet/SheetFooter.vue +19 -0
  295. package/components/ui/sheet/SheetHeader.vue +16 -0
  296. package/components/ui/sheet/SheetTitle.vue +22 -0
  297. package/components/ui/sheet/SheetTrigger.vue +11 -0
  298. package/components/ui/sheet/index.ts +31 -0
  299. package/components/ui/slider/Slider.vue +36 -0
  300. package/components/ui/slider/index.ts +1 -0
  301. package/components/ui/tabs/Tabs.vue +15 -0
  302. package/components/ui/tabs/TabsContent.vue +22 -0
  303. package/components/ui/tabs/TabsList.vue +25 -0
  304. package/components/ui/tabs/TabsTrigger.vue +27 -0
  305. package/components/ui/tabs/index.ts +4 -0
  306. package/components/ui/textarea/Textarea.vue +27 -0
  307. package/components/ui/textarea/index.ts +1 -0
  308. package/components/ui/toast/Toast.vue +28 -0
  309. package/components/ui/toast/ToastAction.vue +22 -0
  310. package/components/ui/toast/ToastClose.vue +27 -0
  311. package/components/ui/toast/ToastDescription.vue +22 -0
  312. package/components/ui/toast/ToastProvider.vue +11 -0
  313. package/components/ui/toast/ToastTitle.vue +22 -0
  314. package/components/ui/toast/ToastViewport.vue +20 -0
  315. package/components/ui/toast/Toaster.vue +34 -0
  316. package/components/ui/toast/index.ts +38 -0
  317. package/components/ui/toast/use-toast.ts +165 -0
  318. package/components.json +18 -0
  319. package/composables/useBreadcrumb.ts +47 -0
  320. package/composables/useCollapsedMap.ts +3 -0
  321. package/composables/useConfig.ts +227 -0
  322. package/composables/useEditLink.ts +27 -0
  323. package/composables/useI18nDocs.ts +114 -0
  324. package/composables/useMdcMenu.ts +204 -0
  325. package/composables/usePm.ts +58 -0
  326. package/composables/useScrollspy.ts +51 -0
  327. package/composables/useThemes.ts +46 -0
  328. package/composables/useToast.ts +1 -0
  329. package/content/index.md +45 -0
  330. package/eslint.config.js +3 -0
  331. package/i18n/i18n.config.ts +414 -0
  332. package/index.d.ts +610 -0
  333. package/layouts/blank.vue +5 -0
  334. package/layouts/default.vue +9 -0
  335. package/layouts/editorial.vue +83 -0
  336. package/lib/registry/themes.ts +636 -0
  337. package/lib/uno-preset.ts +143 -0
  338. package/memory-bank/activeContext.md +17 -0
  339. package/memory-bank/productContext.md +21 -0
  340. package/memory-bank/progress.md +16 -0
  341. package/memory-bank/projectbrief.md +20 -0
  342. package/memory-bank/systemPatterns.md +25 -0
  343. package/memory-bank/techContext.md +29 -0
  344. package/modules/inject-css.ts +40 -0
  345. package/nuxt.config.ts +124 -0
  346. package/package.json +71 -0
  347. package/pages/[...slug].vue +109 -0
  348. package/pages/admin/[...slug].vue +145 -0
  349. package/pages/index.vue +24 -0
  350. package/plugins/injectCssHmr.ts +26 -0
  351. package/plugins/wordup.ts +130 -0
  352. package/public/content-doc.json +792 -0
  353. package/public/iconesjs.svg +4 -0
  354. package/scripts/buildContentDoc-cli.ts +8 -0
  355. package/scripts/buildContentDoc.ts +165 -0
  356. package/tailwind.config.js +1 -0
  357. package/tsconfig.json +3 -0
  358. package/uno.config.mjs +58 -0
  359. package/utils/index.ts +12 -0
@@ -0,0 +1,41 @@
1
+ ---
2
+ title: Umami
3
+ icon: lucide:cloud
4
+ description: Integration for Umami analytics.
5
+ ---
6
+
7
+ **shadcn-docs-nuxt** has built-in support for [Umami Analytics](https://umami.is/). Add your Umami `data-website-id` to `app.config.ts`.
8
+
9
+ ```ts [app.config.ts]
10
+ export default defineAppConfig({
11
+ shadcnDocs: {
12
+ site: {
13
+ umami: {
14
+ enable: true,
15
+ src: 'https://cloud.umami.is/script.js',
16
+ dataWebsiteId: 'your-data-website-id',
17
+ },
18
+ },
19
+ },
20
+ });
21
+ ```
22
+
23
+ These values are used to add the Umami script to `<head>`{lang="html"} as shown below.
24
+
25
+ ```html
26
+ <script defer src="https://cloud.umami.is/script.js" data-website-id="your-data-website-id"></script>
27
+ ```
28
+
29
+ ## Parameters
30
+
31
+ ::field-group
32
+ ::field{name="enable" type="boolean" default-value="false"}
33
+ Whether to turn on the umami integration.
34
+ ::
35
+ ::field{name="src" type="string" default-value="https://cloud.umami.is/script.js"}
36
+ The link src in the tracking code.
37
+ ::
38
+ ::field{name="dataWebsiteId" type="string"}
39
+ The _Website ID_ from umami dashboard.
40
+ ::
41
+ ::
@@ -0,0 +1,3 @@
1
+ title: Configuration
2
+ icon: lucide:settings
3
+ navigation.redirect: /development/configuration/overview
@@ -0,0 +1,49 @@
1
+ ---
2
+ title: Overriding
3
+ icon: lucide:blocks
4
+ description: Replacing shadcn-docs-nuxt components with custom vue components.
5
+ ---
6
+
7
+ _shadcn-docs-nuxt_ is a [Nuxt Layer](https://nuxt.com/docs/getting-started/layers). You can override any component in _shadcn-docs-nuxt_ by creating a custom vue component in your project with the same path as the original component. **Make sure that your component contains the same props as the original component.**
8
+
9
+ Here is a brief showcase of the `components/` folder in _shadcn-docs-nuxt_.
10
+
11
+ ::file-tree
12
+ ---
13
+ tree:
14
+ - components:
15
+ - layout:
16
+ - Header.vue
17
+ - Footer.vue
18
+ - ...
19
+ - content:
20
+ - Accordion.vue
21
+ - Alert.vue
22
+ - ProseCode.vue
23
+ - ...
24
+ - ui:
25
+ - button/
26
+ - card/
27
+ - ...
28
+ ---
29
+ ::
30
+
31
+ :alert[Check out the complete file structure on **GitHub**]{to="https://github.com/ZTL-UwU/shadcn-docs-nuxt/tree/main/components" target="_blank"}
32
+
33
+ For example, if you want to override the `Footer` component, create `/components/layout/Footer.vue` in your project root.
34
+
35
+ ```vue [/components/layout/Footer.vue]
36
+ <template>
37
+ <footer class="py-6 text-muted-foreground md:px-8 md:py-0">
38
+ <div class="container flex flex-col items-center justify-between gap-2 md:h-24 md:flex-row">
39
+ My footer
40
+ <span class="flex-1" />
41
+ {{ footer.credits }}
42
+ </div>
43
+ </footer>
44
+ </template>
45
+
46
+ <script setup lang="ts">
47
+ const { footer } = useConfig().value;
48
+ </script>
49
+ ```
@@ -0,0 +1,89 @@
1
+ ---
2
+ icon: lucide:sigma
3
+ title: Math Equations
4
+ description: Write LaTeX in shadcn-docs-nuxt.
5
+ ---
6
+
7
+ ::tabs{variant="line"}
8
+ ::div{label="KaTeX"}
9
+ ::steps
10
+ ### Install Plugins
11
+ :pm-install{name="remark-math rehype-katex" save-dev}
12
+
13
+ ### Add Plugins to Nuxt Config
14
+ ```ts [nuxt.config.ts]
15
+ export default defineNuxtConfig({
16
+ devtools: { enabled: true },
17
+ extends: ['shadcn-docs-nuxt'],
18
+ css: [
19
+ 'katex/dist/katex.min.css',
20
+ ],
21
+ content: {
22
+ markdown: {
23
+ remarkPlugins: [
24
+ 'remark-math',
25
+ ],
26
+ rehypePlugins: {
27
+ 'rehype-katex': {
28
+ output: 'html',
29
+ },
30
+ },
31
+ },
32
+ },
33
+ });
34
+ ```
35
+
36
+ ### Write LaTeX
37
+ ````mdc
38
+ #### Inline
39
+ $E = mc^2$
40
+
41
+ #### Centered
42
+ When $a \ne 0$, there are two solutions to $(ax^2 + bx + c = 0)$ and they are
43
+ $$ x = {-b \pm \sqrt{b^2-4ac} \over 2a} $$
44
+
45
+ #### Math Block
46
+ ```math
47
+ L = \frac{1}{2} \rho v^2 S C_L
48
+ ```
49
+ ````
50
+ ::
51
+ ::
52
+ ::div{label="MathJax"}
53
+ ::steps
54
+ ### Install Plugins
55
+ :pm-install{name="remark-math rehype-mathjax" save-dev}
56
+
57
+ ### Add Plugins to Nuxt Config
58
+ ```ts [nuxt.config.ts]
59
+ export default defineNuxtConfig({
60
+ devtools: { enabled: true },
61
+ extends: ['shadcn-docs-nuxt'],
62
+ content: {
63
+ markdown: {
64
+ remarkPlugins: [
65
+ 'remark-math',
66
+ ],
67
+ rehypePlugins: [
68
+ 'rehype-mathjax',
69
+ ],
70
+ },
71
+ },
72
+ });
73
+ ```
74
+
75
+ ### Write LaTeX
76
+ ````mdc
77
+ $E = mc^2$
78
+
79
+ $$
80
+ E = mc^2
81
+ $$
82
+
83
+ ```math
84
+ E = mc^2
85
+ ```
86
+ ````
87
+ ::
88
+ ::
89
+ ::
@@ -0,0 +1,3 @@
1
+ title: Advanced
2
+ icon: lucide:pyramid
3
+ navigation.redirect: /development/configuration
@@ -0,0 +1,9 @@
1
+ ---
2
+ title: Themes
3
+ icon: lucide:palette
4
+ description: Add colors. Make it yours.
5
+ ---
6
+
7
+ ::Alert{to="/development/configuration#theme"}
8
+ See how to customize the theme in **Configuration**.
9
+ ::
@@ -0,0 +1,38 @@
1
+ ---
2
+ title: Composables
3
+ description: Composable functions exported by shadcn-docs-nuxt.
4
+ icon: 'lucide:square-function'
5
+ ---
6
+
7
+ ### `useConfig()`
8
+
9
+ Get the config from `app.config.ts`.
10
+
11
+ - `main`, `header`, `aside`, `footer` and `toc` can be set from `_dir.yml` and any `page.md` file.
12
+
13
+ ```ts
14
+ const {
15
+ site,
16
+ search,
17
+ header,
18
+ main,
19
+ aside,
20
+ footer,
21
+ toc,
22
+ } = useConfig();
23
+ ```
24
+
25
+ ### `useScrollspy()`
26
+
27
+ Modified from [docus](https://github.com/nuxt-themes/docus/blob/main/composables/useScrollspy.ts). `useScrollspy()` is used in docs layout to make the ToC display the currently visible headings.
28
+
29
+ ```ts
30
+ const {
31
+ // Headings on the page
32
+ visibleHeadings,
33
+ // Active headings (for the current page)
34
+ activeHeadings,
35
+ // Update headings (an array of DOM nodes)
36
+ updateHeadings
37
+ } = useScrollspy();
38
+ ```
@@ -0,0 +1,36 @@
1
+ ---
2
+ title: Installation
3
+ description: How to install shadcn-docs-nuxt in your app.
4
+ icon: 'lucide:play'
5
+ ---
6
+
7
+ ## Using the starter template
8
+
9
+ ::steps
10
+ ### Get Starter Template
11
+
12
+ :pm-x{command="nuxi@latest init <project-name> -t github:ZTL-UwU/shadcn-docs-nuxt-starter"}
13
+
14
+ ::alert
15
+ Alternatively, you can clone or download the template from the [GitHub repo](https://github.com/ZTL-UwU/shadcn-docs-nuxt-starter).
16
+ ::
17
+
18
+ ### Install Dependencies
19
+
20
+ :pm-install
21
+
22
+ ### Development Server
23
+
24
+ :pm-run{script="dev"}
25
+
26
+ ::alert{type="success" icon="lucide:circle-check"}
27
+ Well done! A browser window should automatically open for http://localhost:3000.
28
+ ::
29
+
30
+ ### Configure shadcn-docs
31
+
32
+ Pick the theme or adjust other settings to your liking.
33
+
34
+ :read-more{to="/development/configuration/overview"}
35
+
36
+ ::
@@ -0,0 +1,3 @@
1
+ title: Development
2
+ icon: lucide:code-xml
3
+ navigation.redirect: /development/configuration
@@ -0,0 +1,5 @@
1
+ ---
2
+ title: test
3
+ ---
4
+
5
+ [tada](/)
@@ -0,0 +1,67 @@
1
+ ---
2
+ title: Home
3
+ navigation: false
4
+ layout: editorial
5
+ header:
6
+ position: over
7
+ ---
8
+
9
+ ::hero
10
+ ---
11
+ actions:
12
+ - name: Get Started
13
+ to: /getting-started/introduction
14
+ - name: GitHub
15
+ variant: outline
16
+ to: https://github.com/ZTL-UwU/shadcn-docs-nuxt
17
+ leftIcon: lucide:github
18
+ announcement:
19
+ title: Release v0.8.13
20
+ icon: 🎉
21
+ to: https://github.com/ZTL-UwU/shadcn-docs-nuxt/releases/latest
22
+ target: _blank
23
+ class: bg-gradient-to-b from-primary/20 to-transparent full-width full-content
24
+ ---
25
+ #title
26
+ Effortless and Beautiful Template.
27
+
28
+ #description
29
+ Beautifully designed Nuxt Content template built with :br
30
+ [shadcn-vue](https://www.shadcn-vue.com) and [unocss](https://unocss.dev).
31
+ ::
32
+
33
+ ::div{.bg-gray-100}
34
+ test div
35
+ ::
36
+
37
+ ::section{.bg-gray-100}
38
+ test section
39
+ ::
40
+
41
+ ::prose-section{.bg-gray-100}
42
+ :::card
43
+ lorem ipsum
44
+ :::
45
+
46
+ :::card
47
+ auiea
48
+ :::
49
+ ::
50
+
51
+ latuinerst nrst auiea Quisque rutrum. Praesent congue erat at massa. Vestibulum purus quam, scelerisque ut, mollis sed, nonummy id, metus. Duis vel nibh at velit scelerisque suscipit. Praesent nec nisl a purus blandit viverra.
52
+
53
+ ::prose-section{.wide-content.bg-gray-100}
54
+ section wide-content
55
+ ::
56
+
57
+ ::prose-section{.full-width.bg-gray-100}
58
+ section full-width
59
+ ::
60
+
61
+ ::prose-section{.bg-gray-100.full-width.wide-content}
62
+ section full-width wide-content
63
+ ::
64
+
65
+ ::prose-section{.bg-gray-100.full-width.full-content}
66
+ section full-width full-content
67
+ ::
@@ -0,0 +1,187 @@
1
+ ---
2
+ title: Card test
3
+ toc: false
4
+ ---
5
+
6
+ ## Basic
7
+
8
+ ::card
9
+ test
10
+ ::
11
+
12
+ ## With title
13
+
14
+ ::card
15
+ ---
16
+ to: https://shadcn-vue.com
17
+ ---
18
+
19
+
20
+
21
+
22
+ ### title
23
+
24
+ Card content
25
+ ::
26
+
27
+ ::card
28
+ ---
29
+ to: https://shadcn-vue.com
30
+ ---
31
+ #title
32
+ Card Title
33
+
34
+ #content
35
+ Card content
36
+ ::
37
+
38
+ ::card
39
+ ---
40
+ icon: lucide:arrow-up-right
41
+ to: https://shadcn-vue.com
42
+ ---
43
+ Card content
44
+ ::
45
+
46
+ ::card
47
+ ---
48
+ to: https://shadcn-vue.com
49
+ ---
50
+ #title
51
+ Card Title
52
+ ::
53
+
54
+ ## With image
55
+
56
+ ::card
57
+ ---
58
+ icon: lucide:arrow-up-right
59
+ media: og-shadcn-docs-dark.png
60
+ to: https://shadcn-vue.com
61
+ ---
62
+ Content
63
+ ::
64
+
65
+ ::card
66
+ ---
67
+ media: og-nuxt.png
68
+ to: https://shadcn-vue.com
69
+ ---
70
+ #title
71
+ Card Title
72
+
73
+ #description
74
+ Description
75
+
76
+ #content
77
+ Beautifully designed **Nuxt Content** template with **shadcn-vue**.\
78
+ \_Customizable. Compatible. Open Source.\_
79
+
80
+ #footer
81
+ Footer
82
+ ::
83
+
84
+ ## Media position
85
+
86
+ :/\:card-group
87
+
88
+ ::card
89
+ ---
90
+ icon: lucide:sun
91
+ media: og-shadcn-docs-dark.png
92
+ mediaPosition: right
93
+ to: https://shadcn-vue.com
94
+ ---
95
+ #title
96
+ Card Title #test
97
+
98
+ #descriptionn
99
+ Description
100
+
101
+ #content
102
+ test #test lorem ipsum dolor sit **amet** !
103
+ Donec vitae orci sed dolor rutrum auctor. Vestibulum fringilla pede sit amet augue. In auctor lobortis lacus. Praesent vestibulum dapibus nibh.
104
+ ::
105
+
106
+ ::card
107
+ ---
108
+ class: border-none shadow-none
109
+ icon: lucide:sun
110
+ media: og-nuxt.png
111
+ mediaPosition: left
112
+ to: https://shadcn-vue.com
113
+ ---
114
+ #title
115
+ Card Title #test uit auiesrt auienrst auie auieeee st auitest anursit ast auirset rst auind pnets a
116
+
117
+ #description
118
+ Description group-hover/card\:scale-105 transition-all group-hover/card\:scale-105 transition-all
119
+
120
+ #content
121
+ test #test uiesrt auienrst auie auieeee st auitest anursit ast auirset rst auind pnets a
122
+ uiesrt auienrst auie auieeee st auitest anursit ast auirset rst auind pnets a
123
+ uiesrt auienrst auie auieeee st auitest anursit ast auirset rst auind pnets a
124
+ uiesrt auienrst auie auieeee st auitest anursit ast auirset rst auind pnets a
125
+ uiesrt auienrst auie auieeee st auitest anursit ast auirset rst auind pnets a
126
+ ::
127
+
128
+ ::card
129
+ ---
130
+ class: h-100
131
+ icon: lucide:sun
132
+ media: https://static.vecteezy.com/system/resources/thumbnails/002/073/237/small_2x/helix-pattern-on-a-white-background-free-vector.jpg
133
+ mediaPosition: cover
134
+ to: https://shadcn-vue.com
135
+ ---
136
+ #tsest
137
+
138
+ #title
139
+ Card Title #test uit auiesrt auienrst auie auieeee
140
+ ::
141
+
142
+ ::card
143
+ ---
144
+ class: h-50 bg-blue-200
145
+ icon: lucide:sun
146
+ iconPosition: right
147
+ mediaPosition: center
148
+ title: Title Etiam feugiat lorem non metus.
149
+ ---
150
+ auieaui
151
+ ::
152
+
153
+ ::card
154
+ ---
155
+ icon: lucide:sun
156
+ media: https://static.vecteezy.com/system/resources/thumbnails/002/073/237/small_2x/helix-pattern-on-a-white-background-free-vector.jpg
157
+ mediaPosition: centere
158
+ ---
159
+ #tsest
160
+
161
+ #title
162
+ Card Title #test uit auiesrt auienrst auie auieeee
163
+
164
+ #media
165
+ :::hero
166
+ ---
167
+ actions:
168
+ - name: Get Started
169
+ to: /getting-started
170
+ - name: GitHub
171
+ variant: outline
172
+ to: https://github.com/ZTL-UwU/shadcn-docs-nuxt
173
+ leftIcon: lucide:github
174
+ announcement:
175
+ title: Release v1.0.0
176
+ icon: lucide:party-popper
177
+ to: /getting-started
178
+ ---
179
+ #title
180
+ Effortless and Beautiful :br Docs Template.
181
+
182
+ #description
183
+ Beautifully designed Nuxt Content template with shadcn-vue. :br Customizable. Compatible. Open Source.
184
+ :::
185
+ ::
186
+
187
+ \::
@@ -0,0 +1,88 @@
1
+ ---
2
+ title: test
3
+ layout: editorial
4
+ header:
5
+ position: over
6
+ ---
7
+
8
+ ::hero
9
+ ---
10
+ actions:
11
+ - name: Get Started
12
+ to: /getting-started
13
+ - name: GitHub
14
+ variant: outline
15
+ to: https://github.com/ZTL-UwU/shadcn-docs-nuxt
16
+ leftIcon: lucide:github
17
+ announcement:
18
+ title: Release v1.0.0
19
+ icon: lucide:party-popper
20
+ to: /getting-started
21
+ class: full-width force-dark
22
+ media: https://picsum.photos/id/62/2000/500
23
+ mediaPosition: cover
24
+ ---
25
+ #title
26
+ Effortless and Beautiful Docs Template.
27
+
28
+ #description
29
+ Beautifully designed Nuxt Content template with shadcn-vue. Customizable. Compatible. Open Source.
30
+ ::
31
+
32
+ :read-more{title="Nuxt website" to="/development/composables"}
33
+
34
+ ::steps
35
+ ### Get Starter Template
36
+
37
+ :::code-group
38
+ ```bash [npm]
39
+ npx nuxi@latest init <project-name> -t github:ZTL-UwU/shadcn-docs-nuxt-starter
40
+ ```
41
+
42
+ ```bash [pnpm]
43
+ pnpm dlx nuxi@latest init <project-name> -t github:ZTL-UwU/shadcn-docs-nuxt-starter
44
+ ```
45
+
46
+ ```bash [bun]
47
+ bunx nuxi@latest init <project-name> -t github:ZTL-UwU/shadcn-docs-nuxt-starter
48
+ ```
49
+ :::
50
+
51
+ {{ $doc.title || 'default' }}
52
+
53
+ :::alert
54
+ Alternatively, you can clone or download the template from the [GitHub repo](https://github.com/ZTL-UwU/shadcn-docs-nuxt-starter).
55
+ :::
56
+
57
+ ### Install Dependencies
58
+
59
+ :::code-group
60
+ ```bash [npm]
61
+ npm install
62
+ ```
63
+
64
+ ```bash [pnpm]
65
+ pnpm install
66
+ ```
67
+
68
+ ```bash [bun]
69
+ bun install
70
+ ```
71
+ :::
72
+
73
+ ### Development Server
74
+
75
+ :::code-group
76
+ ```bash [npm]
77
+ npm run dev -- -o
78
+ ```
79
+
80
+ ```bash [pnpm]
81
+ pnpm dev -o
82
+ ```
83
+
84
+ ```bash [bun]
85
+ bun run dev -o
86
+ ```
87
+ :::
88
+ ::
@@ -0,0 +1,12 @@
1
+ ---
2
+ title: test 2
3
+ ---
4
+
5
+ ::mdc-example
6
+ ```mdc
7
+ > test
8
+ ```
9
+ ::
10
+
11
+ ::mdc-replay{content="test"}
12
+ ::