# What changed in emojibase

> 27 changes in emojibase 6 to 18 from its official release notes, upgrade guides and advisories: 10 breaking, 5 new APIs and options. Each one cited. Sources checked 2026-11-02. HTML: https://unstale.sh/npm/emojibase/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## emojibase 18

### Breaking changes

- The field now uses the fully-qualified form from emoji-test.txt; 152 emoji that default to emoji presentation no longer include a redundant FE0F. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)
- The generator now requires Node.js 22 or newer. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)
- Packages now require Node.js 20 or newer. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)

### New APIs and options

- Exports the list of every shortcode preset, including the discord and slack aliases. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)

### Behavior and default changes

- The pattern now matches default-emoji characters without FE0F. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)

### Fixes and other changes

- Locale labels and keywords now follow UTS #35 inheritance and naming rules, correcting locale-specific annotations and shortcode labels. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)
- Adds 9 emoji, including skin tones for the two thumb signs, with localized labels and keywords. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)
- Fixes compilation without the DOM library, such as in Node.js, because the type extends RequestInit. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)
- Statuses now match emoji-test.txt, including text presentation sequences, redundant FE0F forms, and COMPONENT qualifiers. (18.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4018.0.0)

## emojibase 17

### Fixes and other changes

- Emoji data is updated to Emoji v17 and CLDR 48, changing the emoji and locale data available to developers. (17.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4017.0.0)

## emojibase 16

### Breaking changes

- Dropped Node.js v16 support; Node.js >= v18.12 is required. (16.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4016.0.0)

### New APIs and options

- Added Vietnamese language support. (16.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4016.0.0)

### Fixes and other changes

- Updated to Emoji v16 and CLDR 46. (16.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4016.0.0)

## emojibase 15

### Behavior and default changes

- Adds support for emoji v15. (15.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4015.0.0)

### Fixes and other changes

- Aligns the emojibase version with the spec. (15.0.0) — [release notes](https://github.com/milesj/emojibase/releases/tag/emojibase%4015.0.0)

## emojibase 6

### Breaking changes

- The `browser` entry in the package was removed. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- `fetchMetadata` was renamed to `fetchMessages`. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- The `annotation` field was renamed to `label`. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- IE 11 is no longer supported; modern browsers are now required. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- The `NON_LATIN_LOCALES` constant was removed. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- The UMD build was removed. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)

### New APIs and options

- Added the `FULLY_QUALIFIED` constant. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- Added the `MINIMALLY_QUALIFIED` constant. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- Added the `UNQUALIFIED` constant. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)

### Fixes and other changes

- CLDR data was updated to CLDR 40. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- Emoji data was updated to Emoji 14.0. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
- `fetchShortcodes` no longer returns an empty response for `cldr-native` and invalid locales. (6.0.0) — [release notes](https://github.com/milesj/emojibase/blob/HEAD/packages/core/CHANGELOG.md)
