| .. | ||
| templates | ||
| ArrowRightCircleFilledIcon.tsx | ||
| ArrowRightCircleIcon.tsx | ||
| BranchIcon.tsx | ||
| BranchStrokeIcon.tsx | ||
| CalendarDaysIcon.tsx | ||
| CalendarIcon.tsx | ||
| CheckIcon.tsx | ||
| CheckRadioIcon.tsx | ||
| CheckRadioOutlineIcon.tsx | ||
| CheckRoundFilledIcon.tsx | ||
| ChevronDownIcon.tsx | ||
| ChevronGrabberHorizontal.tsx | ||
| ChevronLeft.tsx | ||
| ChevronRight.tsx | ||
| CirclePlaceholderOnIcon.tsx | ||
| ClockIcon.tsx | ||
| ClockOutlineIcon.tsx | ||
| CommitIcon.tsx | ||
| CopyIcon.tsx | ||
| CrossCircleIcon.tsx | ||
| CrossIcon.tsx | ||
| CursorBoxIcon.tsx | ||
| CustomIcon.tsx | ||
| EllipseIcon.tsx | ||
| EllipsesIcon.tsx | ||
| FolderIcon.tsx | ||
| GithubIcon.tsx | ||
| GitHubLogo.tsx | ||
| GithubStrokeIcon.tsx | ||
| GitIcon.tsx | ||
| GitTeaIcon.tsx | ||
| GlobeIcon.tsx | ||
| HorizontalDotIcon.tsx | ||
| index.ts | ||
| InfoRoundFilledIcon.tsx | ||
| InfoSquareIcon.tsx | ||
| LifeBuoyIcon.tsx | ||
| LinkChainIcon.tsx | ||
| LinkIcon.tsx | ||
| LoaderIcon.tsx | ||
| LoadingIcon.tsx | ||
| LockIcon.tsx | ||
| MinusCircleIcon.tsx | ||
| NotificationBellIcon.tsx | ||
| PencilIcon.tsx | ||
| PlusIcon.tsx | ||
| QuestionMarkRoundIcon.tsx | ||
| README.md | ||
| RefreshIcon.tsx | ||
| RocketIcon.tsx | ||
| SearchIcon.tsx | ||
| SettingsSlidersIcon.tsx | ||
| SnowballIcon.tsx | ||
| StorageIcon.tsx | ||
| TrendingIcon.tsx | ||
| UndoIcon.tsx | ||
| WarningDiamondIcon.tsx | ||
| WarningIcon.tsx | ||
| WarningTriangleIcon.tsx | ||
1. What icons are compatible with this component?
- Viewbox "0 0 24 24": From where you're exporting from, please make sure the icon is using viewBox="0 0 24 24" before downloading/exporting. Not doing so will result in incorrect icon scaling
2. How to add a new icon?
2.1 Sanitising the icon
- Duplicate a current icon e.g. CrossIcon and rename it accordingly.
- Rename the function inside the new file you duplicated too
- Replace the markup with your SVG markup (make sure it complies with the above section's rule)
- Depending on the svg you pasted...
A. If the
<svg>has only 1 child, remove the<svg>parent entirely so you only have the path left B. If your component has more than 1 paths, rename<svg>tag with the<g>tag. Then, remove all attributes of this<g>tag so that it's just<g> - Usually, icons are single colored. If that's the case, replace all fill/stroke color with
currentColor. E.g.. Leave the other attributes without removing them. - If your icon has more than one colour, then it's up to you to decide whether we want to use tailwind to help set the fill and stroke colors
- Lastly, export your icon in
index.tsby following what was done for CrossIcon - Make sure to provide a name to the
<CustomIcon>component for accessibility sake - Done!
2.3 Use your newly imported icon
- You can change simply use
<BellIcon size="32" />to quickly change both width and height with the same value (square). For custom viewBox, width and height, simply provide all three props. - Coloring the icon: Simply add a className with text color. E.g.
<BellIcon className="text-gray-500" />