format:
:jetpackmodule_suffix:
Jetpacktemplate_sigil:
~LVNcomponent:
LiveViewNative.Jetpack.Component
The LiveViewNative Jetpack package lets you use Phoenix LiveView to build native Android apps with Jetpack Compose.
- In Android Studio, select File → Add Packages...
- Enter the package URL
https://github.com/liveview-native/liveview-client-jetpack - Select Add Package
Create a LiveView to connect to a Phoenix server running on http://localhost:4000.
// add jetpackNow when you start up your app, the LiveView will automatically connect and serve your native app.
If available in Hex, the package can be installed
by adding live_view_native_jetpack to your list of dependencies in mix.exs:
def deps do
[
{:live_view_native_jetpack, "~> 0.3.0"}
]
endThen add the Jetpack plugin to your list of LiveView Native plugins:
config :live_view_native, plugins: [
LiveViewNative.Jetpack
]This plugin provides the Jetpack rendering behavior of a Phoenix LiveView. Start by adding this plugin to a LiveView. We do this with LiveViewNative.LiveView:
defmodule MyAppWeb.HomeLive do
use MyAppWeb :live_view
use LiveViewNative.LiveView,
formats: [:jetpack],
layouts: [
jetpack: {MyAppWeb.Layouts.Jetpack, :app}
]
endthen just like all format LiveView Native rendering components you will create a new module namespaced under the calling module with the module_suffix appended:
defmodule MyAppWeb.HomeLive.Jetpack do
use LiveViewNative.Component,
format: :jetpack
def render(assigns, _interface) do
~LVN"""
<Text>Hello, Jetpack!</Text>
"""
end
endFurther details on additional options and an explanation of template rendering vs using render/2 are in the LiveView Native docs.
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/live_view_native_jetpack.
- Browse the documentation to read about the API.
- Check out the ElixirConf '22 chat app for an example of a complete app.