Adds a public API for other Recomp mods to register their own apps in Kanto Gear's Silph Store. Thanks to @poooooby for the original module interface.
- Apps provide their own icon, label, translations and opening callback. Gear yields rendering and input while an external app reports its screen open, then resumes when it closes.
- Apps can target individual editions through
ctx.edition, alongside the existingctx.generationandctx.gen3fields. Unsupported apps are hidden from the Store and Home and cannot be opened. - Temporarily missing or unavailable apps retain their saved enablement and Home shortcut placement. They return to a free saved slot when available again. Explicit Store removal clears their shortcut and enablement.
- App icons and translations are isolated, and callback errors are contained.
For mod authors, the interface is gear.exports.modules, API version 1. A Crystal-only app uses:
available = function(ctx)
return ctx.edition == "crystal"
end,The developer guide includes the registration template, all edition IDs and the screen lifecycle contract. Apps are supplied by separately installed Recomp mods; this interface does not download or update mods. In Phone mode, Gear releases the native display to the external app and pauses its phone UI; external app frames are not streamed to the phone.
Includes the Pokérus indicators from 4.2.2 and the Gen 2 Bag exit fix from 4.2.1.
Validation: automated tests across all eleven supported editions, including the 11-by-11 edition availability matrix, shortcut persistence, screen ownership, callback failures and the headless Phone browser suite; Lua syntax checks and verification of every packaged file. Both skins were inspected in Gen 1/2 Light and Dark during integration. On-device testing is still pending.