Components
Frontend Hamroun provides a rich set of components to help you build interactive and responsive user interfaces.
Component Overview
Explore all available components in the Frontend Hamroun library. Use the search and filter options above to find specific components by name, description, or tags.
Component Comparison
Compare different components to find the right one for your use case.
Feature | Button | IconButton | LinkButton | GlowButton |
---|---|---|---|---|
Keyboard Navigation | ✅ | ✅ | ✅ | ✅ |
Icon Support | ✅ | ✅ | ✅ | ✅ |
Loading State | ✅ | ✅ | ❌ | ✅ |
Hover Effects | Basic | Basic | Underline | Advanced |
Form Submit | ✅ | ❌ | ❌ | ✅ |
Bundle Size Impact | Small | Small | Small | Medium |
Interactive Examples
Try out some of our most popular components with these interactive examples. Toggle between light/dark themes and desktop/mobile views to see how they adapt.
Button Component
Code Example
Button Variants
Card Component
Code Example
Interactive Card
This card demonstrates the interactive 3D hover effect available in our card components.
Interactive Icons
API Reference
Detailed documentation for component props and configuration options.
Button Props
Prop | Type | Default | Description |
---|---|---|---|
variant | "primary" | "accent" | "subtle" | "primary" | The visual style variant of the button |
size | "sm" | "md" | "lg" | "md" | Controls the size of the button |
disabled | boolean | false | When true, disables the button |
icon | ReactNode | undefined | Optional icon to display inside the button |
href | string | undefined | If provided, renders as an anchor tag |
onClick | () => void | undefined | Function called when button is clicked |
className | string | "" | Additional CSS class names |
Card Props
Prop | Type | Default | Description |
---|---|---|---|
title | string | undefined | Card title displayed at the top |
description | string | undefined | Optional description text |
image | string | undefined | Optional image URL to display |
variant | "default" | "hover" | "interactive" | "default" | The visual style and behavior of the card |
className | string | "" | Additional CSS class names |
children | ReactNode | undefined | Content to display inside the card |
Component FAQs
Create custom components by defining a function or class that returns JSX. You can extend existing components using composition or inheritance patterns.
Yes, all components are fully typed with TypeScript definitions included in the package. This provides excellent IDE support and type safety.
Components accept className props for styling with CSS or Tailwind. You can also use the theme system, CSS modules, or styled-components.
Yes, all components follow WCAG guidelines with proper ARIA attributes, keyboard navigation support, and focus management.
Related Resources
Explore tutorials, videos, and additional documentation to master Frontend Hamroun components.
Component Popularity
See which components are most widely used in the community.