plugins: a splash is part of a plugin, like its icon
assets/splash.png is discovered by presence, published by the same copy that already took the whole assets directory, and carried on DiscoveredPlugin beside icon. The platform draws no splash — a plugin has no launch. It is carried because the plugin repository is where a product's artwork lives now, and the phone app that fronts the same product needs somewhere to read it from that is not a designer's folder. The pair is the point: the icon is a reduction of the splash's world, and keeping them together is what stops them drifting. Publishing no longer gates on the icon alone, which left a plugin shipping only a splash serving nothing. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -240,6 +240,18 @@ export type DiscoveredPlugin = {
|
||||
* naming one outside that set silently renders a neutral box.
|
||||
*/
|
||||
icon: string | null;
|
||||
/**
|
||||
* `assets/splash.png` — the app's launch scene, published beside the icon.
|
||||
*
|
||||
* The platform itself draws no splash; a plugin has no launch. It is carried because the plugin
|
||||
* repository is where a product's artwork lives now, and the mobile app that fronts the same
|
||||
* product needs somewhere to read it from that is not a designer's folder. Presence is the
|
||||
* declaration, exactly as with the icon.
|
||||
*
|
||||
* The pair is deliberate: `assets/icon.png` is a reduction of `assets/splash.png`'s world, and
|
||||
* keeping them in one place is what stops the two drifting apart.
|
||||
*/
|
||||
splash: string | null;
|
||||
/** `api/router.ts` — a backend router, mounted at `mountPrefix`. */
|
||||
api: string | null;
|
||||
/** `db/schema.ts` — tables, pushed on install. Every name must be prefixed `<appName>_`. */
|
||||
|
||||
Reference in New Issue
Block a user