Skip to content

docs(dev): the viewer is a library, not an app - #15597

Open
skjnldsv wants to merge 1 commit into
masterfrom
feat/dev/viewer-becomes-a-library
Open

docs(dev): the viewer is a library, not an app#15597
skjnldsv wants to merge 1 commit into
masterfrom
feat/dev/viewer-becomes-a-library

Conversation

@skjnldsv

@skjnldsv skjnldsv commented Sep 9, 2026

Copy link
Copy Markdown
Member

☑️ Resolves

The viewer ships as @nextcloud/viewer now, so the manual documented an app that will not be there:

  • \OCA\Viewer\Event\LoadViewer in the events list — apps dispatched it to ask the viewer app to load itself, and there is nothing to dispatch to any more
  • the development setup cloned nextcloud/viewer under "Check out external shipped apps". That section existed only for the viewer, and with it gone every app under alwaysEnabled lives in the server tree, so it goes too

The release notes gain what an app actually has to change: registering a handler, getViewer().open([node], node) and canView(node) in place of OCA.Viewer, and the enabled preview providers, which moved from an initial state the app provided to the core.previews.enabled_providers capability. That capability is documented next to the theming one in the OCS overview, with a versionadded:: 36.

🖼️ Screenshots

✅ Checklist

  • I have built the documentation locally and reviewed the output
  • Screenshots are included for visual changes
  • I have not moved or renamed pages (or added a redirect if I did)
  • I have run codespell or similar and addressed any spelling issues

👾 This pull request was assisted by Claude Code, commits carry an Assisted-by trailer.

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

This was referenced Sep 9, 2026
The viewer app is gone from Nextcloud 36 and ships as @nextcloud/viewer.
The manual still documented the app's own API: the LoadViewer event apps
dispatched to ask it to load itself, and a development setup that cloned
its repository, which is no longer needed now that every alwaysEnabled
app lives in the server tree.

The release notes gain what an app has to change: registering a handler,
opening the viewer through getViewer() rather than OCA.Viewer, and the
enabled preview providers, which moved from an initial state the app
provided to core.previews.enabled_providers, documented with the other
capabilities.

Assisted-by: ClaudeCode:claude-opus-5
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
@skjnldsv
skjnldsv force-pushed the feat/dev/viewer-becomes-a-library branch from 617d2d7 to 52408a7 Compare September 9, 2026 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant