Icon
SVG icons from Heroicons, rendered inline for styling flexibility.
Basic Icons
Use the name prop to select an icon.
<%= render Rvk::IconComponent.new(name: :home, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :user, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :cog, variant: :solid) %>
Variants
Icons come in outline and solid variants.
outline
solid
<%= render Rvk::IconComponent.new(name: :home, variant: :outline) %>
<%= render Rvk::IconComponent.new(name: :home, variant: :solid) %>
Sizes
Icons come in 5 sizes.
xs
sm
md
lg
xl
<%= render Rvk::IconComponent.new(name: :star, size: :xs, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :star, size: :sm, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :star, size: :md, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :star, size: :lg, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :star, size: :xl, variant: :solid) %>
Colors
Icons inherit text color. Use Tailwind classes to style.
<%= render Rvk::IconComponent.new(name: :heart, size: :lg, variant: :solid, class: "text-red-500") %>
<%= render Rvk::IconComponent.new(name: :check_circle, size: :lg, variant: :solid, class: "text-green-500") %>
<%= render Rvk::IconComponent.new(name: :exclamation_triangle, size: :lg, variant: :solid, class: "text-yellow-500") %>
Common Icons
Some frequently used icons.
home
user
users
cog
bell
envelope
calendar
folder
document
plus
minus
x_mark
check
pencil
trash
archive_box
arrow_left
arrow_right
arrow_up
arrow_down
chevron_left
chevron_right
chevron_up
chevron_down
magnifying_glass
funnel
bars_3
ellipsis_vertical
eye
eye_slash
lock_closed
lock_open
heart
star
bookmark
flag
phone
camera
photo
video_camera
link
clipboard
document_duplicate
cloud
arrow_up_tray
arrow_down_tray
chart_bar
chart_pie
presentation_chart_line
<%= render Rvk::IconComponent.new(name: :home, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :user, variant: :solid) %>
<%= render Rvk::IconComponent.new(name: :heart, variant: :solid) %>
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| name | Symbol/String | required | Heroicon name (e.g., :home, :user) |
| variant | Symbol | :outline | Icon style: :outline or :solid |
| size | Symbol | :md | Icon size: :xs, :sm, :md, :lg, :xl |