All notable changes to this project will be documented in this file. The format follows Keep a Changelog and this project adheres to Semantic Versioning.
2.0.0 — 2026-05-03
The first major-version bump in nearly five years. Tooling, types, and the
public component API have all been modernized; the icons themselves are still
the original Feather set (now at upstream 4.29.2).
sizeprop as a shorthand forwidth+height(default24). (closes #16)colorprop as the documented alias forstroke(default"currentColor").absoluteStrokeWidthprop — keeps perceived stroke weight constant across sizes by computingstrokeWidth * 24 / size. Useful for 14–16 px icons.- Forwarded refs on every icon, so you can target the underlying
Svgfrom hooks likeuseAnimatedRefor third-party imperative APIs. (closes #17) displayNameon every icon, removes the "Component definition is missing display name" lint warning. (closes #15)createIcon(name, iconNode)factory exported for users who want to ship custom icons with the same API.- Per-icon deep imports via the
exportsmap, e.g.import { ArrowUpCircle } from 'react-native-feather/icons/ArrowUpCircle'. - TypeScript declarations for both ESM and CJS (
.d.tsand.d.cts). - A real
LICENSEfile at the repository root. (closes #18) - CI workflow runs lint, typecheck, tests and build against Node 20 and 22.
- npm provenance attestation on every published release.
- Build pipeline:
tsc+api-extractorreplaced withtsup(esbuild under the hood). Output now lives indist/, notlib/. - Module format: dual ESM + CJS through the
exportsfield, with propertypesresolution for both. Drops the legacy single-mainshape. - Icon source: SVGR is gone. Icons are now generated from
feather-iconsbyscripts/build-icons.mjsand committed tosrc/icons/, so the source tree is browseable on GitHub and the build is fully reproducible. - Peer dependencies widened. Was
react-native >=0.46,react-native-svg >=5.3. Nowreact >=16.8,react-native-svg >=12,react-native: "*". - Bumped
feather-iconsfrom4.28.0to4.29.2(no new icons upstream, only build tooling fixes). - Sorted icon exports alphabetically in the barrel index.
- Each path/polygon/etc. inside an icon now has a stable
key, silencing the React list-key warning when icons mount.
api-extractorand its config —tsupemits declarations directly..svgrrc.jsand the SVGR dev dependency.- The old publish workflow that auto-committed version bumps back to
masterand rancontributors-readme-action. Replaced with a tag-driven publish pipeline that creates a GitHub release with auto-generated notes.
- <ArrowUpCircle stroke="red" width={32} height={32} />
+ <ArrowUpCircle color="red" size={32} />The old props still resolve, so existing call sites keep working until you choose to update them.
1.1.2 — 2021-06-27
See git history for releases prior to v2.