Skip to content
This repository was archived by the owner on Feb 10, 2026. It is now read-only.
This repository was archived by the owner on Feb 10, 2026. It is now read-only.

Add "offline mode" support #71

@supernintendo

Description

@supernintendo

This ticket is to implement "offline mode", which will allow LiveView Native applications to run entirely within the native environment without a persistent Internet connection. A few implementation concerns:

  1. This will require running an instance of the BEAM VM on device; the method to deploy and run BEAM will differ depending on the target environment.
    • For desktop environments like SwiftUI for macOS, WinUI etc. this should be as easy as running the compiled Erlang app as any other process on the host OS. For environments like iOS and Android this might involve a more specialized linking process.
    • Each platform library will need to provide its own method of loading BEAM into the native environment and interfacing with it from the LiveView Native client application.
  2. Ideally, offline mode should be integrated with mix release so that packaging LVN apps to run on device is as easy as packaging them to run in other environments (like servers for example). This will also ensure compatibility will existing CI toolchains.
  3. Distributed Erlang could be used to synchronize the local Erlang app with remote instances. Should we provide abstractions for this or let end-user developers figure it out themselves?

Prior art:

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestv0.3Hex release 0.3

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions