Gathering detailed insights and metrics for react-native-dynamic-vector-icons
Gathering detailed insights and metrics for react-native-dynamic-vector-icons
Gathering detailed insights and metrics for react-native-dynamic-vector-icons
Gathering detailed insights and metrics for react-native-dynamic-vector-icons
npm install react-native-dynamic-vector-icons
Typescript
Module System
Node Version
NPM Version
68.6
Supply Chain
89.9
Quality
76
Maintenance
100
Vulnerability
100
License
2.0.0
Published on 12 Sept 2024
Better IconType approach and typing 🥳
Published on 29 Jan 2023
IconType exportable type and much better handling 🚀
Published on 04 Jun 2022
Icon build is here and IconPropsBase is exportable now 😋
Published on 13 May 2021
Better for Testing and Types 🥳
Published on 30 Sept 2020
FontAwesome 5 Support & Better Structure 🥳
Published on 11 Sept 2020
JavaScript (53.79%)
TypeScript (43.63%)
Shell (2.58%)
Total Downloads
356,430
Last Day
252
Last Week
1,104
Last Month
5,362
Last Year
53,108
99 Stars
1,352 Commits
13 Forks
3 Watching
7 Branches
4 Contributors
Latest Version
2.0.0
Package Id
react-native-dynamic-vector-icons@2.0.0
Unpacked Size
27.67 kB
Size
9.72 kB
File Count
28
NPM Version
9.5.1
Node Version
18.16.0
Publised On
12 Sept 2024
Cumulative downloads
Total Downloads
Last day
-8.7%
252
Compared to previous day
Last week
-11.3%
1,104
Compared to previous week
Last month
13%
5,362
Compared to previous month
Last year
-46.1%
53,108
Compared to previous year
Add the dependency:
1npm i react-native-dynamic-vector-icons 2npm i react-native-vector-icons 3# iOS Only 4npx pod-install
1"react-native-dynamic-vector-icons": "WrathChaos/react-native-dynamic-vector-icons#expo"
"react-native-vector-icons": ">= 6.x.x"
1import Icon, { IconType } from "react-native-dynamic-vector-icons";
1<Icon 2 name="github" 3 type={IconType.AntDesign} 4 size={30} 5 color="purple" 6 onPress={() => {}} 7/>
AntDesign
by AntFinance (297 icons)Entypo
by Daniel Bruce (411 icons)EvilIcons
by Alexander Madyankin & Roman Shamin (v1.10.1, 70 icons)Feather
by Cole Bemis & Contributors (v4.21.0, 279 icons)FontAwesome
by Dave Gandy (v4.7.0, 675 icons)FontAwesome 5
by Fonticons, Inc. (v5.7.0, 1500 (free) 5082 (pro) icons)Fontisto
by Kenan Gündoğan (v3.0.4, 615 icons)Foundation
by ZURB, Inc. (v3.0, 283 icons)Ionicons
by Ben Sperry (v4.2.4, 696 icons)MaterialIcons
by Google, Inc. (v3.0.1, 932 icons)MaterialCommunityIcons
by MaterialDesignIcons.com (v4.0.96, 4416 icons)Octicons
by Github, Inc. (v8.4.1, 184 icons)Zocial
by Sam Collins (v1.0, 100 icons)SimpleLineIcons
by Sabbir & Contributors (v2.4.1, 189 icons)1<key>UIAppFonts</key> 2<array> 3 <string>AntDesign.ttf</string> 4 <string>Entypo.ttf</string> 5 <string>EvilIcons.ttf</string> 6 <string>Feather.ttf</string> 7 <string>FontAwesome.ttf</string> 8 <string>FontAwesome5_Brands.ttf</string> 9 <string>FontAwesome5_Regular.ttf</string> 10 <string>FontAwesome5_Solid.ttf</string> 11 <string>Foundation.ttf</string> 12 <string>Ionicons.ttf</string> 13 <string>MaterialIcons.ttf</string> 14 <string>MaterialCommunityIcons.ttf</string> 15 <string>SimpleLineIcons.ttf</string> 16 <string>Octicons.ttf</string> 17 <string>Zocial.ttf</string> 18 <string>Fontisto.ttf</string> 19</array>
Note: you need to recompile your project after adding new fonts, also ensure that they also appear under Copy Bundle Resources in Build Phases.
If you want to use the TabBar/NavigatorIOS integration or use getImageSource
/getImageSourceSync
, then you need to add RNVectorIcons.xcodeproj
to Libraries and add libRNVectorIcons.a
to Link Binary With Libraries under Build Phases. More info and screenshots about how to do this is available in the React Native documentation.
react-native link
$ react-native link react-native-vector-icons
Note: Some users are having trouble using this method, try one of the others if you are too.
Add the following to your Podfile
and run pod update
:
pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons'
Edit Info.plist
as described above.
If you are using use_frameworks!
in your Podfile
you instead need to dynamically load the icon font by doing Icon.loadFont()
when boostrapping your application.
Note: You must be consuming React itself via CocoaPods for this to work, see React Native documentation on how to set that up.
This method has the advantage of fonts being copied from this module at build time so that the fonts and JS are always in sync, making upgrades painless.
Edit android/app/build.gradle
( NOT android/build.gradle
) and add the following:
1apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"
To customize the files being copied, add the following instead:
1project.ext.vectoricons = [ 2 iconFontNames: [ 'MaterialIcons.ttf', 'EvilIcons.ttf' ] // Name of the font files you want to copy 3] 4 5apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"
Fonts
folder to android/app/src/main/assets/fonts
(note lowercase fonts folder).getImageSource
supportThese steps are optional and only needed if you want to use the Icon.getImageSource
function.
Edit android/settings.gradle
to look like this (without the +):
1rootProject.name = 'MyApp' 2 3include ':app' 4 5+ include ':react-native-vector-icons' 6+ project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android')
Edit android/app/build.gradle
(note: app folder) to look like this:
1apply plugin: 'com.android.application' 2 3android { 4 ... 5} 6 7dependencies { 8 compile fileTree(dir: 'libs', include: ['*.jar']) 9 compile "com.android.support:appcompat-v7:23.0.1" 10 compile "com.facebook.react:react-native:+" // From node_modules 11+ compile project(':react-native-vector-icons') 12}
Edit your MainApplication.java
(deep in android/app/src/main/java/...
) to look like this (note two places to edit):
1package com.myapp; 2 3+ import com.oblador.vectoricons.VectorIconsPackage; 4 5.... 6 7 @Override 8 protected List<ReactPackage> getPackages() { 9 return Arrays.<ReactPackage>asList( 10 new MainReactPackage() 11+ , new VectorIconsPackage() 12 ); 13 } 14 15}
Property | Type | Default | Description |
---|---|---|---|
style | style | style | use this to change the Icon's style |
name | string | null | use this to change icon's itself |
type | IconType | null | set the icon's type |
size | number | null | changes the icon's size |
color | color | null | use this to change icon's color |
onPress | function | undefined | use this to set the icon's onPress functionality |
Special thanks to oblador, react-native-vector-icons to make a great icon library :) This library is a little wrapper for react-native-vector-icons to make their icon type dynamically.
FreakyCoder, kurayogun@gmail.com
React Native Dynamic Vector Icons Library is available under the MIT license. See the LICENSE file for more info. )
No vulnerabilities found.
Reason
no dangerous workflow patterns detected
Reason
no binaries found in the repo
Reason
license file detected
Details
Reason
dependency not pinned by hash detected -- score normalized to 5
Details
Reason
0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Reason
Found 0/1 approved changesets -- score normalized to 0
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
Reason
project is not fuzzed
Details
Reason
branch protection not enabled on development/release branches
Details
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
Reason
17 existing vulnerabilities detected
Details
Score
Last Scanned on 2025-01-27
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More