UI Components Overview
Foundational elements for building your dashboard.
Overview
LibreApps Desktop's UI components are based on shadcn/ui, a collection of beautifully designed, accessible components that you can copy and paste into your apps. We've customized these components to fit LibreApps Desktop aesthetic and integrated them with our rebranding engine.
Key Components
- Buttons: Various styles and sizes for user actions.
- Inputs: Text fields, checkboxes, radios, and more for data entry.
- Cards: Versatile containers for grouping related content.
- Modals: Dialogs for focused user interactions.
- Tables: For displaying structured data with sorting and filtering.
- Tabs: For organizing content into different views.
Customization
You can customize these components in two ways:
- Tailwind CSS: Pass custom classes to the
classNameprop. - Theme Variables: Update the CSS variables in your theme definition to change colors, border radii, and more.
Accessibility
All UI components are built using Radix UI primitives, which provide a solid foundation for accessibility. They support keyboard navigation, screen readers, and follow WAI-ARIA best practices.
Best Practices
- ✅ Do this: Use the appropriate component for the task (e.g., use a
Buttonfor actions, not aLink). - ✅ Do this: Provide clear labels and descriptions for all input fields.
- ❌ Don't do this: Modify the core component files in
src/components/uidirectly; instead, wrap them or use Tailwind classes for customization.