NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3849 most downloaded on npm
Load fonts at runtime and use them in React Native components.
Last release 2 days ago
15 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 57 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
282 releases · first in 2018
Nothing published for this version
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
Nothing published for this version
One column per quarter.
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
Removed deprecated content property of the clipboard event listener. Use getStringAsync() instead. (#41739 by @barthap)
expo-notifications
expo-modules-core
ignoreSafeAreaKeyboardInsets to ignoreSafeArea on Host component. It now accepts 'all' or 'keyboard' instead of a boolean. (#42598 by @nishan) (#42598 by @intergalacticspacehighway)expo-localization
expo-image-loader
expo-clipboard
expo-cellular
expo-brightness
expo-blur
expo-web-browser
expo-sqlite
expo-speech
expo-sharing
expo-notifications
expo-modules-core
ExpoAppDelegate inheritance requirement in ExpoReactNativeFactory (#39417 by @gabrieldonadel)applicationDidReceiveMemoryWarning subscribing to ExpoAppDelegateSubscriberManager (#40504 by @szydlovsky)Encodable types can now be converted to JavaScript values. (#40621 by @tsapeta)subscriberDidRegister function to AppDelegate subscribers. (#40684 by @tsapeta)reloadAppAsync method to AppContext. (#42295 by @aleqsio)map to ValueOrUndefined. (#40593 by @Wenszel)process.env.EXPO_DOM_HOST_OS. (#40382 by @EvanBacon)ComposableScope for compose Content functions. (#39155 by @aleqsio)ArrayBuffer. (#39943 by @lukmccall)convertResult to Convertible. (#40302 by @jakex7)ReactActivityHandler.onDidCreateReactActivityDelegateNotification. (#40537 by @lukmccall)ReactNativeHostHandler.onDidCreateReactHost. (#40561 by @lukmccall)hermesEnabled property requirement for internal testing (#40678 by @gabrieldonadel)Class definition for shared objects is now optional. (#40708 by @tsapeta)ArrayBuffers. (#41404 by @barthap)ArrayBuffers in native modules. (#41415 by @barthap)appDelegateWillBeginInitialization function to AppDelegate subscribers. (#41456 by @tsapeta)RNHost to improve RN component layout inside SwiftUI views (#40938 by @nishan) (#40938 by @intergalacticspacehighway)ignoreSafeAreaKeyboardInsets to SwiftUIHostingView. (#41302 by @nishan) (#41302 by @intergalacticspacehighway)ArrayBuffers. (#41548 by @barthap)RCTHostRuntimeDelegate instead of unofficial bridge.runtime. (#41311 by @tsapeta)JavaScriptActor to isolate code requiring running on the JavaScript thread. (#41793 by @tsapeta)NSEdgeInsets.zero extension to better match UIEdgeInsets. (#42675 by @tsapeta)expo-media-library
expo-location
androidForegroundServiceIcon for controlling the icon for the foreground service. (#41132 by @jeppester)accuracy field to PermissionDetailsLocationIOS exposing iOS 14+ precise/reduced location authorization. (#42931 by @sbs44)expo-image-picker
expo-font
expo-file-system
idempotent option to downloadFileAsync (#39681 by @vonovak)append option to write methods. (#42778 by @aleqsio)expo-device
expo-constants
expo-crypto
expo-camera
expo-contacts
Contacts@Next (#40886 by @Wenszel)hasContactsAsync function (#40756 by @hryhoriiK97)expo-calendar
ExpoCalendar@next (#39108 by @kosmydel and @arturgesiarz) (#39108 by @kosmydel, @arturgesiarz)expo-blur
expo-auth-session
extraHeaders option to TokenRequest and RevokeTokenRequest. (#31381) by @levizimmerman and @lsarni (#31381 by @levizimmerman, @lsarni)expo-web-browser
dismissBrowser hanging when called with no browser open. (#40799 by @alanjhughes)expo-video-thumbnails
expo-task-manager
expo-sqlite
ExpoSQLite.defaultDatabaseDirectory returns undefined. (#40680 by @kudo)useSQLCipher. (#40781 by @ronickg)serializeAsync / serializeSync errors from memory database on web. (#40899 by @kudo)expo-store-review
expo-sensors
expo-sharing
expo-screen-capture
expo-screen-orientation
expo-network
expo-notifications
deleteNotificationChannelGroupAsync export (#43244 by @vonovak)NotificationForwarderActivity on Android 11/12 when Parcelable extras fail to deserialize by using byte array serialization as fallback. (#43203 by @vonovak)requestPermissionsAsync not forwarding new options to the OS when notifications were already granted (#43378 by @vonovak)expo-modules-core
TurboModuleRegistry on web (#39726 by @satya164)useReleasingSharedObject getting destroyed after a fast refresh caused by a change in its dependencies. (#39753 by @behenate)[NSString UTF8String] could return nil for certain string inputs (non-English), leading to an attempt to dereference a null pointer during jsi::String creation. (#40639 by @mohammadamin16)androidNavigationBar.enforceContrast app config property not working. (#40263 by @behenate)Either conversion in Record (#40655 by @vonovak)TextField causing crash when reload and unmounting. (#40960 by @nishan) (#40960 by @intergalacticspacehighway) (#40960, #40960 by @intergalacticspacehighway, @intergalacticspacehighway)useReleasingSharedObject to defer releasing until after render.InvalidArgsNumberException when declaring AsyncFunction with optional arguments and Promise. (#41054 by @Wenszel)AppContextActivityResultLauncher coroutine continuation is active before resuming (#41319 by @vonovak)register overload in ModuleRegistry. (#40149 by @alanjhughes)invalidate callback to SwiftUIVirtualView. (#40237 by @intergalacticspacehighway)ValueOrUndefined conversion in Record. (#40289 by @jakex7)null not being correctly converted to ValueOrUndefined in Record. (#41005 by @lukmccall)NativeModule extending Record<string, any>, which made it not type-safe. (#41320 by @lukmccall)expo -> expo-modules-core/types -> ./build/global rather than types="node" (#42751 by @kitten)DynamicBoolType to correctly distinguish boolean values from numeric 0/1. (#42978 by @nishan) (#42978 by @intergalacticspacehighway)DynamicBoolType to throw NullCastException for nil values, matching DynamicRawType behavior. (#43085 by @nishan) (#43085 by @intergalacticspacehighway)PersistentFileLog. (#43283 by @alanjhughes)field.options.insert() silently failing in fieldsOf() due to mutation on protocol existential. (#43341 by @just1and0)Prop definition component by isolating its setter to the main actor. (#43348 by @tsapeta)expo-mail-composer
expo-media-library
endCursor description in the documentation. (#39120 by @Wenszel)id to URI format (#39920 by @Wenszel)delete() throwing security exception (#39914 by @Wenszel)asset.getModificationTime to return milliseconds (#39715 by @Wenszel)expo-location
mIsHostPaused initialization. Location updates are now delivered immediately when app is in foreground, matching iOS behavior. (#41659 by @tyrauber)scope field in a permissions request result (#41328 by @vonovak)expo-localization
expo-intent-launcher
expo-image-manipulator
expo-image-picker
expo-gl
expo-font
expo-file-system
createFile and createDirectory methods. (#40314 by @jakex7)File/Directory/Paths API. (#43005 by @aleqsio)File and Directory static methods. (#43282 by @alanjhughes)expo-clipboard
expo-constants
expo-crypto
expo-camera
expo-contacts
namePrefix on iOS (#39974 by @hryhoriiK97)editWithForm throws error (#43315 by @Wenszel)expo-calendar
expo-brightness
expo-asset
expo-web-browser
experimentalLauncherActivity config plugin option as it was replaced with the useProxyActivity option on openBrowserAsync and openAuthSessionAsync methods. (#41535 by @lukmccall)warmUpAsync JSDoc. (#42944 by @brentvatne)expo-video-thumbnails
androidx.annotation:annotation dependency. (#39755 by @lukmccall)expo-task-manager
expo-sqlite
expo-sensors
expo-sms
androidx.annotation:annotation dependency. (#39756 by @lukmccall)expo-sharing
androidx.legacy:legacy-support-v4 dependency. (#39757 by @lukmccall)expo-screen-capture
removeScreenshotListener call as deprecated (#42098 by @vonovak)expo-secure-store
expo-screen-orientation
expo-notifications
assertValidAndroidAssetName from expo/config-plugins (#39883 by @vonovak)NotificationImportance.UNSPECIFIED as not suitable for use (#41709 by @vonovak)assert dependency (#42970 by @kitten)expo-modules-core
kotlinOptions to compilerOptions DSL. (#39794 by @huextrat)expo-module.config.json. (#39985, #40241 by @jakex7)RuntimeScheduler to schedule tasks on the JS thread. (#40473 by @alanjhughes)EXConstantsService) from expo-constants. (#41339 by @tsapeta)appContext.fileSystem, appContext.utilities, appContext.imageLoader and appContext.permissions with the core implementations. (#41350, #41370, #41396 by @tsapeta)executeOnJavaScriptThread in favor of runtime.schedule. (#41478 by @tsapeta & #41551 by @lukmccall) (#41478, #41551 by @tsapeta, @lukmccall)ShadowNodeProxy.setStyleSize() for Jetpack Compose integration. (#41553 by @kudo)RCTHost. (#41632 by @alanjhughes)NativeViewManagerAdapter. (#41804 by @tsapeta)EXReactNativeEventEmitter class. (#41915 by @tsapeta)NativeModulesProxy is absent. (#43020 by @tsapeta)Either type stable. (#43267 by @lukmccall)ExpoModulesCorePlugin. (#43312 by @lukmccall)expo-media-library
removeSubscription calls as deprecated (#42098 by @vonovak)android:maxSdkVersion annotation to READ_EXTERNAL_STORAGE and WRITE_EXTERNAL_STORAGE permissions. (#40976 by @behenate)expo-location
androidx.annotation:annotation dependency. (#39758 by @lukmccall)expo-localization
expo-keep-awake
expo-intent-launcher
androidx.annotation:annotation dependency. (#39760 by @lukmccall)expo-image-manipulator
androidx.annotation:annotation dependency (#39764 by @lukmccall)expo-image-loader on iOS. (#41395 by @tsapeta)expo-image-picker
expo-image-loader
expo-gl
expo-haptics
await for performHapticsAsync (#40987 by @kamui545)androidx.annotation:annotation dependency. (#39759 by @lukmccall)expo-font
expo-file-system
android:maxSdkVersion annotation to READ_EXTERNAL_STORAGE and WRITE_EXTERNAL_STORAGE permissions. (#40976 by @behenate)expo-device
androidx.legacy:legacy-support dependency. (#39762 by @lukmccall)expo-clipboard
removeClipboardListener call as deprecated (#42098 by @vonovak)expo-constants
expo-crypto
ExpoCrypto.getRandomBase64String() fallback in getRandomBytes() (#41517 by @hassankhan)expo-camera
CGImageProperties in exif data. (#40801 by @alanjhughes)expo-contacts
CNContactStore lazily (#42096 by @vonovak)androidx.annotation:annotation dependency (#39761 by @lukmccall)expo-calendar
@ in @platform ios JSDoc tag for EntityTypes enum. (#42944 by @brentvatne)expo-blur
expo-asset
expo-gl
texImage2D expo wrapper. (#41499 by @psnet)stb_image.h used for image decoding in texImage2D expo wrapper to support only JPEG, PNG, GIF image formats. Formats BMP, PSD, TGA, HDR, PIC, PNM are no longer supported. (#41001 by @psnet)stb_image.h used for image decoding in texImage2D expo wraper method. A lot of fixes and performance improvements, see related PR. (#41000 by @psnet)useFonts return value in RSC (#40481 by @vonovak)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
fix android image scaling in renderToImageAsync (#40113 by @vonovak)
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
Nothing published for this version
[android] improve bitmap rendering for renderToImageAsync (#39118 by @vonovak)
Fix types and adjust platform checks. (#37302 by @EvanBacon)
Nothing published for this version
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
_This version does not introduce any user-facing changes._
This version does not introduce any user-facing changes.
[web] remove deprecated style 'type' attribute (#38114 by @vonovak)
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →