Implementation of the lucide icon library for React Native applications
First, ensure that you have react-native-svg@^12.0.0
installed. Then, install the package:
yarn add lucide-react-native
or
npm install lucide-react-native
It's build with ESmodules so it's completely tree-shakable. Each icon can be imported as a react component.
You can pass additional props to adjust the icon.
import { Camera } from 'lucide-react-native';// Returns ReactComponent// Usageconst App = () => {return <Camera color="red" size={48} />;};export default App;
name | type | default |
---|---|---|
size | number | 24 |
color | string | currentColor |
strokeWidth | number | 2 |
absoluteStrokeWidth | boolean | false |
You can also pass custom props that will be added in the svg as attributes.
// Usageconst App = () => {return <Camera fill="red" />;};
It is possible to create one generic icon component to load icons.
:warning: Example below importing all EsModules, caution using this example, not recommended when you using bundlers, your application build size will grow strongly.
import * as icons from 'lucide-react';const Icon = ({ name, color, size }) => {const LucideIcon = icons[name];return <LucideIcon color={color} size={size} />;};export default Icon;