Amazon Developer

as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
Ring
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート
アクセスいただきありがとうございます。こちらのページは現在英語のみのご用意となっております。順次日本語化を進めてまいりますので、ご理解のほどよろしくお願いいたします。

React Native 0.83 Migration: Library Developer Guidance

This page applies if you are developing a library (system library or shared package) rather than an app. For app migration, see Migrate Apps to React Native 0.83.

Peer dependency configuration

Libraries must use peerDependencies (not dependencies) for the Vega runtime. If you add the runtime in dependencies, it causes module ID conflicts at runtime when apps and libraries use different RN versions.

{
  "peerDependencies": {
    "@amazon-devices/react-native-kepler": ">=4.0.0 <5.0.0"
  },
  "devDependencies": {
    "@amazon-devices/react-native-kepler": "^4.0.0"
  }
}

Version range guidelines

Scenario peerDependencies range
No source code changes + uses RN APIs ">=2.0.0" (open range)
No source code changes + no RN usage Remove entirely
Source code changes between versions "~4.0.0" or "^4.0.0" (restrictive)

Library detection indicators

Your package is a system library if it has any of the following:

  • SystemModules/ directory in project root
  • kepler-system-conf.toml file
  • kepler-compatibility.json file

Additional considerations

  • Changes to library APIs affect all consumers. Test with at least one consumer app before publishing.
  • Update library version and changelog appropriately.
  • Consider backward compatibility for existing consumers.
  • Ensure isolatedModules type exports use export type syntax.

Last updated: Jul 09, 2026