# React Font Awesome 3.0.0 — Release 3.0.0 - Product: React Font Awesome (https://whatsnew.fyi/product/react-fontawesome) - Vendor: Fonticons - Date: 2025-08-22 - Version: 3.0.0 - Original notes: https://github.com/FortAwesome/react-fontawesome/releases/tag/3.0.0 - Permalink: https://whatsnew.fyi/product/react-fontawesome/releases/3.0.0 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **removed** — Support for FontAwesome versions below v6 - **removed** — Support for Node versions below 20.x - **removed** — Support for React versions below 18.x - **removed** — Support for browser versions that do not support the ES2020 standard, specifically JavaScript built-in globalThis - **changed** — Rewrote the entire library from plain JavaScript to TypeScript - **changed** — Replaced rollup with tsup for providing both ESM and CJS exports from one TypeScript source - **removed** — prop-types dependency in favour of colocated typings for React component props - **added** — Better type definitions to each prop including examples of usage - **changed** — Upgraded eslint from v6 to v9 with Flat Config and modernised ESLint config, plugins and rules - **changed** — Refactored all unit tests from react-test-renderer to @testing-library/react - **changed** — Upgraded all development dependencies to latest versions - **fixed** — Accessibility ID generation (titleId, maskId) for SSR ensuring consistent ID across server and client renders - **fixed** — TypeScript errors when styling duotone icons with CSS variables - **fixed** — aria-hidden attribute to be false if there is a non-empty aria-label attribute - **fixed** — Large number of npm audit issues by removing and updating dependencies - **changed** — Optimised FontAwesomeIcon by reducing per-render function calls and memory allocations - **changed** — Optimised classList function by removing runtime semver checks and array operations - **changed** — Optimised converter with a full rewrite for significant performance increases of approximately 70% - **changed** — Moved inline class strings from getClassListFromProps to pre-computed maps ##### BREAKING - Dropped support for end-of-life FontAwesome versions (below v6), Node versions (below 20.x) and React versions (below 18.x) - Dropped support for browser versions that don't support the ES2020 standard, namely [JavaScript built-in: globalThis](https://caniuse.com/mdn-javascript_builtins_globalthis) ##### Changes - Rewrote the entire library from plain JavaScript to TypeScript - Replaced `rollup` with `tsup` for providing both ESM and CJS exports from one TypeScript source - Removed `prop-types` in favour of colocated typings for React component props - Added better type definitions to each prop including examples of usage - Upgraded `eslint` from v6 to v9, rewrote config as Flat Config, modernised ESLint config, plugins and rules - Refactored all unit tests from the deprecated `react-test-renderer` to the industry standard `@testing-library/react` - Upgraded all other development dependencies to latest versions as of release date - Optimised `FontAwesomeIcon` by reducing per-render function calls and memory allocations - Optimised `classList` function by removing runtime semver checks and array operations - Optimised `converter` with a full rewrite for significant performance increases (~70%) - Moved inline class strings from `getClassListFromProps` to pre-computed maps ##### Bug Fixes - Fixed accessibility ID generation (`titleId, maskId`) for SSR ensuring a consistent ID across server and client renders (#93, #550, #573) - Fixed TypeScript errors when styling duotone icons with CSS variables (#509) - Fixed `aria-hidden` so it is `false` if there is a non-empty `aria-label` attribute (#126) - Resolved large number of `npm audit` issues by removing and updating dependencies ##### New Contributors * @charles4221 made their first contribution in https://github.com/FortAwesome/react-fontawesome/pull/581 **Full Changelog**: https://github.com/FortAwesome/react-fontawesome/compare/0.2.6...3.0.0