Lynx/Modules/OTA Update UI/Installation
@sigx/lynx-updates-ui · Beta · Component library

Installation#

Add @sigx/lynx-updates-ui to your project.

Install the package#

Terminal
pnpm add @sigx/lynx-updates-ui

Peers#

The components sit on top of two packages you configure yourself:

  • @sigx/lynx-updates — the headless OTA engine. Call defineUpdates() in main.tsx.
  • @sigx/lynx-daisyui — the components are built from its Modal / Progress / Button / Alert, so its styles must be in your CSS pipeline.

"Later" dismissals persist across launches via @sigx/lynx-storage, which is installed with this package — sigx prebuild links the native Storage module automatically, so there's nothing to set up. Only on web preview and in tests do dismissals degrade to session-only suppression.

Native setup#

Rebuild your development client after installing:

Terminal
sigx prebuild

Configure#

TSX
import { component } from '@sigx/lynx';
import { defineUpdates } from '@sigx/lynx-updates';
import { UpdateGate, UpdatePrompt, UpdateReadyBanner } from '@sigx/lynx-updates-ui';

defineUpdates({ provider: { url: 'https://updates.example.com/manifest.json' } });

const App = component(() => () => (
  <UpdateGate>
    <Screens />
    <UpdatePrompt />
    <UpdateReadyBanner />
  </UpdateGate>
));

See the Usage guide for how the components divide the update lifecycle.