%{ name: :mob_ash, mob_version: "~> 0.6", # Spec v2: contributions are GENERATED from the host's configuration at # build time — the lane this plugin exists to exercise (MOB_PLUGINS.md # "Code-generated plugins"). Ash was the motivating example for v2; this is # the real thing. plugin_spec_version: 2, description: "Resource-driven Mob screens from Ash: declare Ash resources in the host, " <> "get list/detail/create screens generated per resource", # The generator reads the HOST's :ash_domains config (audited — only keys # declared here may be read) and emits three route entries per resource, all # pointing at mob_ash's shared parameterized screens with the resource module # carried as ROUTE-BOUND params (Mob.Nav.Registry.register/3). screens_generator: {MobAsh.Generator, :generate, []}, host_config_keys: [:ash_domains] # Pure Elixir end to end: no nifs / android / ios sections — every screen is # hot-pushable, and Ash itself runs on-device in the host BEAM. }