diff --git a/apps/v4/components/registry/AddRegistryModal.vue b/apps/v4/components/registry/AddRegistryModal.vue new file mode 100644 index 000000000..5c302c0c6 --- /dev/null +++ b/apps/v4/components/registry/AddRegistryModal.vue @@ -0,0 +1,49 @@ + + + diff --git a/apps/v4/components/registry/RegistryList.vue b/apps/v4/components/registry/RegistryList.vue new file mode 100644 index 000000000..79a6a2fe3 --- /dev/null +++ b/apps/v4/components/registry/RegistryList.vue @@ -0,0 +1,119 @@ + + + diff --git a/apps/v4/content/docs/directory.md b/apps/v4/content/docs/directory.md new file mode 100644 index 000000000..68c7086aa --- /dev/null +++ b/apps/v4/content/docs/directory.md @@ -0,0 +1,19 @@ +--- +title: Registry Directory +description: Discover community registries for shadcn/ui components and blocks. +--- + +These registries are built into the CLI with no additional configuration required. To add a component, run: + +```bash +npx shadcn-vue add @/. +``` + + +Community registries are maintained by third-party developers and are not officially curated. Always review code on installation to ensure it meets your security and quality standards. + + + +Don't see a registry? [Learn how to add it here.](/docs/registry) + + diff --git a/apps/v4/lib/config.ts b/apps/v4/lib/config.ts index 85f63ba5d..e39d7f6b3 100644 --- a/apps/v4/lib/config.ts +++ b/apps/v4/lib/config.ts @@ -25,6 +25,14 @@ export const siteConfig = { href: '/charts/area', label: 'Charts', }, + { + href: '/docs/directory', + label: 'Directory', + }, + { + href: '/themes', + label: 'Themes', + }, { href: '/colors', label: 'Colors', diff --git a/apps/v4/lib/directory-registry.ts b/apps/v4/lib/directory-registry.ts new file mode 100644 index 000000000..7361e850b --- /dev/null +++ b/apps/v4/lib/directory-registry.ts @@ -0,0 +1,10 @@ +export interface DirectoryRegistry { + name: string + description: string + link: string + command?: string + logo: string +} +import directoryJson from '@/registry/directory.json' + +export const directoryRegistryList: DirectoryRegistry[] = [...directoryJson] diff --git a/apps/v4/registry/directory.json b/apps/v4/registry/directory.json new file mode 100644 index 000000000..7dbf08cfa --- /dev/null +++ b/apps/v4/registry/directory.json @@ -0,0 +1,22 @@ +[ + { + "name": "Insipira UI", + "description": "Inspira UI is a collection of reusable, animated components powered by TailwindCSS , motion-v , GSAP & threejs — crafted to help you ship faster and better.", + "link": "https://inspira-ui.com/docs/en", + "logo": "https://cdn.inspira-ui.com/logo-dark.svg" + }, + { + "name": "Stunning UI", + "description": "Create Stunning Websites That Stand Out", + "link": "https://www.stunningui.com/", + "logo": "https://robertshaw.id/assets/stunning-ui.svg" + }, + + { + "name": "Mapcn", + "description": "Beautiful maps,made simple.", + "link": "https://mapcn-vue.geoql.in/", + "logo": "https://raw.githubusercontent.com/geoql/v-maplibre/refs/heads/main/apps/mapcn-vue/public/favicon.svg", + "command": "npx shadcn-vue@latest add https://mapcn-vue.geoql.in/r/map" + } +] diff --git a/apps/v4/registry/new-york-v4/ui/carousel/CarouselContent.vue b/apps/v4/registry/new-york-v4/ui/carousel/CarouselContent.vue index bd3db7e7b..78cbb52fe 100644 --- a/apps/v4/registry/new-york-v4/ui/carousel/CarouselContent.vue +++ b/apps/v4/registry/new-york-v4/ui/carousel/CarouselContent.vue @@ -8,23 +8,20 @@ defineOptions({ }) const props = defineProps() - +// @ts-expect-error Skip this when building since its a neede var const { carouselRef, orientation } = useCarousel()