gitmyhub

react-native-vector-icons

TypeScript ★ 18k updated 25d ago

Customizable Icons for React Native with support for image source and full styling.

A React Native library that bundles popular icon font sets, FontAwesome, Feather, Ionicons, Material Design, and more, so you can drop crisp, colour-and-size-adjustable icons into any iOS or Android screen.

TypeScriptReact NativeiOSAndroidsetup: moderatecomplexity 2/5

React Native Vector Icons is a library for putting crisp, customizable icons into React Native apps. Instead of shipping bitmap images that go fuzzy at different sizes, it ships icon fonts and renders each glyph as text, so icons stay sharp at any size and can be styled with color, size, borders, padding, and the same style rules you would use on any other piece of text in the app. Typical places people use it are buttons, logos, navigation bars, and tab bars.

The project bundles many popular icon sets so you do not have to integrate each one yourself. The README lists actively maintained packs including AntDesign, Feather, FontAwesome, Foundation, Ionicons, MaterialDesignIcons, Octicons, and Lucide, plus a longer list of sets that are no longer maintained upstream but still ship for backward compatibility, such as Entypo, EvilIcons, older FontAwesome versions, Fontisto, MaterialIcons, SimpleLineIcons, and Zocial. You can also bring your own fonts via Fontello or Icomoon. Recent versions moved from a single all-in-one package to a package-per-icon-set approach, so you install only the sets you need.

To use it, install the icon-set package, follow the setup guide for iOS, Android, Windows, Expo, or Web, then drop an Icon component into your screens, passing props for name, size, and color. There is also a helper for turning an icon into an image source object so it can plug into other components that expect a bitmap image. The repository is written primarily in TypeScript. You would reach for this when building a React Native UI and want a consistent, theme-able icon system without wiring up font files or maintaining several different icon libraries by hand.

Where it fits