Rekindle uses the host application's standard Elixir configuration:
config :my_app, Rekindle,
integration: :gpui,
targets: [
web: [features: ["web"]],
desktop: [features: ["desktop"]]
]Top-level options
:integration— required;:gpui,:egui, or:slint.:targets— required; a non-empty keyword list containing:web,:desktop, or both.:public_dir— project-relative Web publication directory. Defaults to"priv/static"and must remain inside the project.
Target options
Each target accepts:
:features— Cargo features enabled for the target. Defaults to an empty list when configuring an adopted client.:package— Cargo package name when the workspace contains more than one package.:binary— Cargo binary name when it cannot be selected from the target entry.:profiles— Cargo profile names for Rekindle's:devand:releasemodes. Defaults to[dev: "dev", release: "release"].
For example:
config :my_app, Rekindle,
integration: :egui,
public_dir: "priv/static",
targets: [
web: [
package: "editor_client",
binary: "web",
features: ["web"],
profiles: [dev: "dev", release: "release"]
],
desktop: [
package: "editor_client",
binary: "desktop",
features: ["desktop"],
profiles: [dev: "dev", release: "release"]
]
]mix rekindle.doctor validates the effective configuration and Cargo metadata
without changing the project.