HotupdaterHot Updater
Concepts

Plugin System

Hot Updater uses a flexible plugin system that lets you customize how bundles are built, stored, and managed to fit your infrastructure.

Build Plugin

Build plugins handle the bundling process when you run the hot-updater deploy command. They generate the JavaScript bundles for your updates.

Supported Plugins

  • @hot-updater/bare: Executes the bundle command through React Native CLI. Bundles through Metro or Re.Pack.
  • @hot-updater/rock: Executes the bundle command through Rock(Formerly RNEF).
  • @hot-updater/expo: Executes the bundle command through Expo.

Storage Plugin

Storage plugins upload your generated bundles during the hot-updater deploy command and store them in your chosen storage provider.

Supported Plugins

  • @hot-updater/supabase: Provides supabaseStorage functionality, leveraging Supabase for storage.
  • @hot-updater/cloudflare: Provides r2Storage functionality, leveraging Cloudflare R2 for storage.
  • @hot-updater/aws: Provides s3Storage functionality, enabling the use of AWS S3 for storage.
  • @hot-updater/firebase: Provides firebaseStorage functionality, utilizing Firebase Storage for storing update bundles.

Database Plugin

Database plugins store bundle metadata that your app uses to check for updates. They run during the hot-updater deploy command.

Supported Plugins

  • @hot-updater/supabase: Provides supabaseDatabase functionality, using Supabase as a database solution.
  • @hot-updater/aws: Provides s3Database functionality, utilizing AWS for database storage.
  • @hot-updater/cloudflare: Provides d1Database functionality, leveraging Cloudflare D1 for database storage.
  • @hot-updater/firebase: Provides firebaseDatabase functionality, using Firebase Firestore for storing update metadata.