Package Exports
- passport-ui/accordion
- passport-ui/alert
- passport-ui/alert-dialog
- passport-ui/analytics
- passport-ui/animated-background
- passport-ui/aspect-ratio
- passport-ui/avatar
- passport-ui/badge
- passport-ui/blockquote
- passport-ui/blur-in
- passport-ui/breadcrumb
- passport-ui/bullet-list
- passport-ui/button
- passport-ui/calendar
- passport-ui/card
- passport-ui/carousel
- passport-ui/checkbox
- passport-ui/chunk-3ERIBAI6
- passport-ui/chunk-46YVCT7M
- passport-ui/chunk-4YRNTVHG
- passport-ui/chunk-A2DGQUNJ
- passport-ui/chunk-BWLAOSKP
- passport-ui/chunk-MYVX5GBC
- passport-ui/chunk-OKCCCVUP
- passport-ui/chunk-R2CFJ2C2
- passport-ui/chunk-VV2YVULU
- passport-ui/chunk-WUKKWTSM
- passport-ui/code-block
- passport-ui/collapsible
- passport-ui/combobox
- passport-ui/command
- passport-ui/components.json
- passport-ui/content-container
- passport-ui/context-menu
- passport-ui/date-picker
- passport-ui/dialog
- passport-ui/drawer
- passport-ui/dropdown-menu
- passport-ui/empty-state
- passport-ui/footer-container
- passport-ui/form
- passport-ui/header-container
- passport-ui/hljs-themes.css
- passport-ui/hover-card
- passport-ui/input
- passport-ui/input-otp
- passport-ui/label
- passport-ui/live-region
- passport-ui/markdown
- passport-ui/menubar
- passport-ui/navigation-menu
- passport-ui/page-layout
- passport-ui/pagination
- passport-ui/popover
- passport-ui/prefetch-link
- passport-ui/progress
- passport-ui/radio-group
- passport-ui/resizable
- passport-ui/scroll-area
- passport-ui/select
- passport-ui/separator
- passport-ui/sequential-reveal
- passport-ui/sheet
- passport-ui/sidebar
- passport-ui/skeleton
- passport-ui/slider
- passport-ui/sonner
- passport-ui/structured-data
- passport-ui/styles.css
- passport-ui/switch
- passport-ui/table
- passport-ui/tabs
- passport-ui/tailwind-colors.css
- passport-ui/textarea
- passport-ui/theme-button
- passport-ui/theme-provider
- passport-ui/theme-toggle
- passport-ui/toggle
- passport-ui/toggle-select
- passport-ui/tooltip
- passport-ui/typewriter-text
- passport-ui/utils
- passport-ui/visually-hidden
Readme
Passport UI

Built on top of shadcn/ui's excellent foundation, but designed as a complete library solution. Explore the collection of 75+ premium components, composed with Tailwind CSS, Radix UI, and Motion.
View documentation at passportui.com. If you're someone who loves Storybook, you can view the components at storybook.passportui.com.
Installation
npm install passport-uiUsing PostCSS
Add the PostCSS plugin to your postcss.config.mjs:
export default {
plugins: ["@tailwindcss/postcss"],
};Import Styles
Import the library styles in your main CSS file:
@source "../../node_modules/passport-ui/src"
@import "passport-ui/styles.css";
/* Optional styles based on requirement */
@import "passport-ui/hljs-themes.css"; /* for code highlighting */
@import "passport-ui/tailwind-colors.css"; /* for runtime usage */- For themed syntax highlighting in
CodeBlockandMarkdowncomponents, import the theme styles. - For dynamic usage of tailwind colors, import the tailwind colors styles.
Import Pattern
Passport UI uses individual component exports for optimal tree-shaking and React Server Components compatibility. Import components individually:
import { Button } from "passport-ui/button";
import { Card, CardContent } from "passport-ui/card";
function App() {
return (
<Card>
<CardContent>
<Button>Click me</Button>
</CardContent>
</Card>
);
}With Theme Support
import { ThemeButton } from "passport-ui/theme-button";
import { ThemeProvider } from "passport-ui/theme-provider";
function App() {
return (
<ThemeProvider attribute="class" defaultTheme="system" enableSystem>
<div className="min-h-screen bg-background text-foreground">
<ThemeButton />
{/* Your app content */}
</div>
</ThemeProvider>
);
}Available Themes
Light- Light themeDark- Dark themeSystem- System theme
Use ThemeProvider to wrap your app and ThemeButton to toggle between themes.
Available Components
Layout Containers
Providers
Components
AccordionAlertAlertDialogAnalyticsAspectRatioAvatarBadgeBlockquoteBreadcrumbBulletListButtonCalendarCardCarouselCheckboxCodeBlockCollapsibleComboboxCommandContextMenuDatePickerDialogDrawerDropdownMenuFormHoverCardInputInputOTPLabelLiveRegionMarkdownMenubarPaginationPopoverPrefetchLinkProgressRadioGroupResizableScrollAreaSelectSeparatorSheetSidebarSkeletonSliderSonnerStructuredDataSwitchTableTabsTextareaToggleToggleSelectTooltipVisuallyHidden