Skip to content

Commit 6292c0e

Browse files
authored
feat: upgrade FontAwesome to version 7 with new package strucutre (#1857)
* feat: upgrade FontAwesome to version 7 with new package structure Add comprehensive FontAwesome 7 support by splitting into separate packages for each style variant. This includes 3 free variants (brands, regular, solid) and 15 pro variants covering standard, duotone, and sharp styles across different weights. Key changes: - Add 18 new FontAwesome packages (3 free, 15 pro) - Update main README to list FontAwesome 7 (7.1.0) as current version with 2,806 free and 75,767 pro icons - Move FontAwesome 6 to "no longer maintained upstream" section - Add generate-fontawesome-glyphmap.mts script for generating package-specific glyphmaps from upstream CSS - Update fetch-pro.sh script with improved shell quoting - Regenerate fonts for ant-design, entypo, and evil-icons - Update directory package to clean generated files before rebuilding - Update various package READMEs with formatting improvements - Update generator template README * feat: support woff2 fonts from upstream * feat: use the classname as the glyphmap file
1 parent 466889f commit 6292c0e

File tree

299 files changed

+97129
-11300
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

299 files changed

+97129
-11300
lines changed

.knip.jsonc

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"ignore": ["src/NativeVectorIcons.ts", "react-native.config.js"]
3131
},
3232
"packages/fontawesome-common": {
33-
"entry": ["scripts/generate-fontawesome-metadata.js"],
33+
"entry": ["scripts/generate-fontawesome-metadata.js", "scripts/generate-fontawesome-glyphmap.mts"],
3434
"ignore": ["generators/app/templates/src/*"],
3535
"ignoreDependencies": ["@types/react"]
3636
},
@@ -89,6 +89,15 @@
8989
"ignore": ["src/NativeVectorIconsFontAwesome.ts"],
9090
"ignoreDependencies": ["font-awesome"]
9191
},
92+
"packages/fontawesome-free-brands": {
93+
"ignoreDependencies": ["@fortawesome/fontawesome-free"]
94+
},
95+
"packages/fontawesome-free-regular": {
96+
"ignoreDependencies": ["@fortawesome/fontawesome-free"]
97+
},
98+
"packages/fontawesome-free-solid": {
99+
"ignoreDependencies": ["@fortawesome/fontawesome-free"]
100+
},
92101
"packages/fontawesome5": {
93102
"ignore": ["src/NativeVectorIconsFontAwesome5.ts"],
94103
"ignoreDependencies": ["@fortawesome/fontawesome-free"]

README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,19 +45,20 @@ RNVI comes with the following supported icons. You can [search NPM](https://www.
4545

4646
- [`AntDesign`](https://ant.design/components/icon) from Ant Group (v4.4.2 with _449_ icons)
4747
- [`Feather`](http://feathericons.com) created by Cole Bemis & Contributors (v4.29.2 featuring _287_ icons)
48-
- [`FontAwesome 6`](https://fontawesome.com/search) designed by Fonticons, Inc. (v6.7.2 featuring _2060_ free and _52663_ pro icons)
48+
- [`FontAwesome`](https://fontawesome.com/search) designed by Fonticons, Inc. (v7.1.0 featuring _2,806_ free and _75,767_ pro icons)
4949
- [`Foundation`](http://zurb.com/playground/foundation-icon-fonts-3) by ZURB, Inc. (v3.0 with _283_ icons)
50-
- [`Ionicons`](https://ionic.io/ionicons) crafted by Ionic (v8.0.9 containing _1357_ icons)
50+
- [`Ionicons`](https://ionic.io/ionicons) crafted by Ionic (v8.0.9 containing _1,357_ icons)
5151
- [`MaterialDesignIcons`](https://pictogrammers.com/library/mdi/) from MaterialDesignIcons.com (v7.4.47 including _7448_ icons)
5252
- [`Octicons`](https://primer.style/foundations/icons) designed by GitHub, Inc. (v19.19.0 with _339_ icons)
53-
- [`Lucide`](https://lucide.dev/) designed by Lucide, (v0.548.0 with _1639_ icons)
53+
- [`Lucide`](https://lucide.dev/) designed by Lucide, (v0.548.0 with _1,639_ icons)
5454

5555
### No longer maintained upstream
5656

5757
- [`Entypo`](http://entypo.com) by Daniel Bruce (v1.0.1 with _411_ icons)
5858
- [`EvilIcons`](http://evil-icons.io) designed by Alexander Madyankin & Roman Shamin (v1.10.1 with _70_ icons)
59-
- [`FontAwesome`](https://fontawesome.com/v4/icons) by Fonticons, Inc. (v4.7.0 containing _785_ icons)
59+
- [`FontAwesome 4`](https://fontawesome.com/v4/icons) by Fonticons, Inc. (v4.7.0 containing _785_ icons)
6060
- [`FontAwesome 5`](https://fontawesome.com/v5/search) from Fonticons, Inc. (v5.15.4 offering _1611_ free and _7869_ pro icons)
61+
- [`FontAwesome 6`](https://fontawesome.com/search) designed by Fonticons, Inc. (v6.7.2 featuring _2060_ free and _52663_ pro icons)
6162
- [`Fontisto`](https://github.com/kenangundogan/fontisto) created by Kenan Gündoğan (v3.0.4 featuring _617_ icons)
6263
- [`MaterialIcons`](https://fonts.google.com/icons?icon.set=Material+Icons) by Google, Inc. (v4.0.0 featuring _2234_ icons)
6364
- [`SimpleLineIcons`](https://simplelineicons.github.io/) crafted by Sabbir & Contributors (v2.5.5 with _189_ icons)

packages/ant-design/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import { AntDesign } from '@react-native-vector-icons/ant-design';
2020
<AntDesign name="house" color="#ff0000" size={20} />
2121
```
2222

23-
2423
## Versions
2524

2625
Prior to version 12, the version of this font package tracked the upstream version.
0 Bytes
Binary file not shown.

packages/directory/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"eject": "react-scripts eject",
2727
"generate-glyphmap-index": "mkdir -p src/generated && bin/generate-glyphmap-index.mts > src/generated/glyphmapIndex.json",
2828
"generate-font-index": "mkdir -p src/generated/fonts && cp ../*/fonts/*.ttf src/generated/fonts && bin/generate-font-styles.mts > src/generated/fonts.css",
29-
"prepare": "pnpm run generate-glyphmap-index && pnpm run generate-font-index"
29+
"prepare": "rm -rf src/generated && pnpm run generate-glyphmap-index && pnpm run generate-font-index"
3030
},
3131
"browserslist": {
3232
"production": [

packages/entypo/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import { Entypo } from '@react-native-vector-icons/entypo';
2020
<Entypo name="house" color="#ff0000" size={20} />
2121
```
2222

23-
2423
## Versions
2524

2625
Prior to version 12, the version of this font package tracked the upstream version.

packages/entypo/fonts/Entypo.ttf

0 Bytes
Binary file not shown.

packages/evil-icons/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import { EvilIcons } from '@react-native-vector-icons/evil-icons';
2020
<EvilIcons name="house" color="#ff0000" size={20} />
2121
```
2222

23-
2423
## Versions
2524

2625
Prior to version 12, the version of this font package tracked the upstream version.
0 Bytes
Binary file not shown.

packages/feather/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import { Feather } from '@react-native-vector-icons/feather';
2020
<Feather name="house" color="#ff0000" size={20} />
2121
```
2222

23-
2423
## Versions
2524

2625
Prior to version 12, the version of this font package tracked the upstream version.

0 commit comments

Comments
 (0)