How nextcloud/xwiki works
This Nextcloud app connects configured XWiki instances to users through search, page viewing/browsing, and per-wiki sign-in. Administrators register and check wikis; users can authenticate with the XWiki OpenID Connect flow, browse pages in experimental integrated mode, and save a page as PDF to Nextcloud files. Search, reference linking, and notifications are registered as Nextcloud capabilities. The tree and excerpts support the page and settings flows; search/reference internals and some settings UI wiring are unsampled, so their details are limited to documented capabilities and registration.
Main entry points: PageController.php Page controller · SettingsController.php Settings controller · Application.php App bootstrap · SettingsManager.php Settings manager
Components 19
App and setup
- App bootstrap
lib/AppInfo/Application.php - HTTP routes
appinfo/routes.php
Identity and settings
- Settings controller
lib/Controller/SettingsController.php - Settings manager
lib/SettingsManager.php - Nextcloud config
- Admin settings
templates/admin.php - Personal settings
templates/usersettings.php
Search and browsing
- Page controller
lib/Controller/PageController.php - Page display
templates/content/index.php - Browse navigation
templates/navigation/index.php - Search provider
lib/Search/Provider.php - Reference provider
lib/Reference/XWikiReferenceProvider.php
Files and notifications
- PDF save action
src/main.js - Nextcloud files
- Instance notifier
lib/XWikiNotifier.php
Other components
- Nextcloud user
- Nextcloud admin
- Nextcloud platform
- XWiki instance
Connections 24
- App bootstrap → Search provider: registers
- App bootstrap → Reference provider: registers
- App bootstrap → Instance notifier: registers
- Nextcloud platform → HTTP routes: dispatches
- Nextcloud user → Page controller: requests pages
- Page controller → Settings manager: loads wiki settings
- Settings manager → Nextcloud config: reads settings
- Page controller → XWiki instance: fetches page and summaries
- Page controller → Page display: renders content
- Page display → Browse navigation: includes navigation
- Nextcloud platform → Search provider: queries
- Search provider → XWiki instance: searches content
- Nextcloud platform → Reference provider: resolves references
- Nextcloud admin → Admin settings: manages wikis
- Nextcloud user → Personal settings: manages preferences
- Admin settings → Settings controller: submits changes
- Personal settings → Settings controller: submits preferences
- Settings controller → Settings manager: reads and updates
- Settings controller → XWiki instance: checks wiki; exchanges tokens
- Settings controller → Instance notifier: dispatches notification
- Nextcloud user → PDF save action: chooses PDF save
- PDF save action → Page controller: requests PDF export
- Page controller → XWiki instance: fetches PDF
- Page controller → Nextcloud files: writes PDF