# Darwin UI - Complete Documentation > Darwin UI is a macOS-inspired React component library featuring glass-morphism aesthetics, dark theme (with light mode support), and Tailwind CSS integration. It provides 36+ production-ready components with Framer Motion animations and full accessibility support. ## Quick Reference | Resource | URL | |----------|-----| | Documentation | https://darwin-ui.mandalsuraj.com | | GitHub | https://github.com/surajmandalcell/darwin-ui | | NPM | https://www.npmjs.com/package/@pikoloo/darwin-ui | | Context7 (AI) | https://context7.com/surajmandalcell/darwin-ui | ## Installation ```bash npm install @pikoloo/darwin-ui # or pnpm add @pikoloo/darwin-ui # or yarn add @pikoloo/darwin-ui ``` ### Setup Import the CSS in your app entry point: ```tsx // app.tsx or main.tsx import '@pikoloo/darwin-ui/styles.css'; import { Button, Card, Window } from '@pikoloo/darwin-ui'; ``` The stylesheet is precompiled in v2.1 and later; no Tailwind `@source` directive is required. --- ## Layout & Navigation Components ### Accordion Collapsible content sections with smooth Framer Motion animations **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/accordion](https://darwin-ui.mandalsuraj.com/docs/components/accordion) **Props**: - `items: { title, content }[]` - `defaultOpen?: number` - `allowMultiple?: boolean` **Example**: ```tsx ``` ### Card Glass-morphism container with header, content, and footer sections **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/card](https://darwin-ui.mandalsuraj.com/docs/components/card) **Props**: - `children` - `className?: string` - `variant?: "default" | "glass"` **Example**: ```tsx Title Body content Footer actions ``` ### Sidebar Navigation sidebar with collapsible mode, tooltips, and active state indicators **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/sidebar](https://darwin-ui.mandalsuraj.com/docs/components/sidebar) **Props**: - `items: SidebarItem[]` - `collapsed?: boolean` - `onCollapse?: () => void` **Example**: ```tsx ``` ### Tabs Tabbed navigation with animated indicator and keyboard support **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/tabs](https://darwin-ui.mandalsuraj.com/docs/components/tabs) **Props**: - `tabs: { label, content }[]` - `defaultIndex?: number` - `onChange?: (index) => void` **Example**: ```tsx Content 1 }, { label: 'Tab 2', content:
Content 2
} ]} /> ``` ### Window macOS-style window chrome with traffic light buttons (close, minimize, maximize) **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/window](https://darwin-ui.mandalsuraj.com/docs/components/window) **Props**: - `title?: string` - `children` - `onClose?: () => void` - `onMinimize?: () => void` **Example**: ```tsx

Window content goes here

``` --- ## Form & Input Components ### Button Versatile button with 10 variants (primary, secondary, ghost, etc.) and 3 sizes **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/button](https://darwin-ui.mandalsuraj.com/docs/components/button) **Props**: - `variant?: ButtonVariant` - `size?: "sm" | "md" | "lg"` - `disabled?: boolean` - `loading?: boolean` **Example**: ```tsx ``` ### Checkbox Checkbox with indeterminate state support and spring animations **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/checkbox](https://darwin-ui.mandalsuraj.com/docs/components/checkbox) **Props**: - `checked?: boolean` - `indeterminate?: boolean` - `onChange?: (checked) => void` - `label?: string` **Example**: ```tsx ``` ### Input Text input with validation states (error, success), icons, and clear button **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/input](https://darwin-ui.mandalsuraj.com/docs/components/input) **Props**: - `value?: string` - `onChange?: (e) => void` - `error?: string` - `success?: boolean` - `icon?: ReactNode` **Example**: ```tsx setEmail(e.target.value)} error={errors.email} /> ``` ### SearchInput Search input with magnifying glass icon and clear functionality **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/search-input](https://darwin-ui.mandalsuraj.com/docs/components/search-input) **Props**: - `value?: string` - `onChange?: (value) => void` - `onSearch?: (value) => void` - `placeholder?: string` **Example**: ```tsx console.log(query)} /> ``` ### Select Dropdown select with custom styling and keyboard navigation **Documentation**: [https://darwin-ui.mandalsuraj.com/docs/components/select](https://darwin-ui.mandalsuraj.com/docs/components/select) **Props**: - `options: { value, label }[]` - `value?: string` - `onChange?: (value) => void` - `placeholder?: string` **Example**: ```tsx