The management surface FuzeFront has never had — every registered app in one
searchable, filterable, paginated view. Not the add-app flow (that is federated-apps): this is
where an admin finds an app by name/slug, sees its lifecycle state, visibility and owning org,
and drills into one to manage it. Rows bind to the real
@fuzefront/app-registry-client GET /api/v1/app-registry/apps.
| App | Slug | State | Visibility | Owning org | Integration |
|---|---|---|---|---|---|
Clock
built-in |
clock | Activated | Public | Platform | builtin |
Northwind CRM |
crm | Activated | Organization | Northwind Inc. | module-federation |
Analytics Studio |
analytics | Registered | Private | Northwind Inc. | iframe |
Billing Portal |
billing-portal | Suspended | Organization | Contoso Ltd. | module-federation |
Shop Connector |
shop-connector | Activated | Marketplace | Platform | module-federation |
Contract. Rows render from GET /api/v1/app-registry/apps (paged; the list is a
collection GET, so it is cursor-paginated — data-action="load-more" fetches the next
page, never an unbounded fetch). Search filters by name/slug; filter chips narrow by
lifecycle status (registered / activated / suspended), visibility
(private / organization / public / marketplace), and owning org — applied server-side as query
params, reflected in the URL. A row is a link to /apps/{slug} (frame b). Built-in apps
(builtin: true, e.g. clock) are tagged and behave differently downstream
(non-deletable). Loading / empty / error / permission-denied are contract — see frame (e).