expo / expo/vector-icons

Provide a way to subset the vendored icon fonts

Open
#337 0 comments 2 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
743
Forks
123
PR merge metrics
No merged PRs in 30d

Description

Reading the [documentation](https://docs.expo.dev/guides/icons/), from my naïve interpretation it seems like this library is embedding the entire font file into the bundle:

> As with [any custom font](https://docs.expo.dev/develop/user-interface/fonts#use-a-local-font-file) in Expo, you can preload icon fonts before rendering your app. The font object is available as a static property on the font component. So, in the case above, it is Ionicons.font, which evaluates to {ionicons: require('path/to/ionicons.ttf')}.

Typical users don't want to include the entire icon set, but just a few icons out of it. We can do subsetting manually and load it as a custom icon font, but it would be better if `@expo/vector-icons` can handle this scenario, maybe by providing a config plugin or somehow?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the Expo icons documentation linked in the issue and inspect how the library exposes its font assets to Expo. Define and document a supported way to subset an icon font, such as a config plugin or another API, with the result verified by confirming that only selected icons are included in the app bundle.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, react-native
Domain
mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.