Skip to main content

Layouts

@conduction/nextcloud-vue provides three pre-composed page layouts. Each is built from Nextcloud's layout primitives — your app selects the appropriate layout per route.

The Default App Shell

Every Nextcloud app starts with the same shell: a top header bar, an app navigation sidebar on the left, and a content area to the right. The library builds all its layouts inside this shell.

Full app layout showing Nextcloud header, left navigation, main content with table, and right sidebar

The shell has four regions:

RegionNextcloud PrimitiveDescription
Header(global)Nextcloud top bar — app switcher, search, notifications, user menu
App NavigationNcAppNavigationLeft sidebar — schema icons, entity links, settings link
ContentNcAppContentMain content area — list, detail, or settings view
App SidebarNcAppSidebarRight panel — search, filters, column visibility, or object details

The App Sidebar is optional and can be toggled by the user.

Available Layouts

LayoutUsed ForKey Components
List PageEntity list viewsCnIndexPage, CnIndexSidebar, CnFacetSidebar
Detail PageSingle object viewCnObjectCard, CnFormDialog, CnDeleteDialog
Settings PageAdmin configurationCnSettingsSection, CnRegisterMapping, CnVersionInfoCard

App navigation sidebar showing entity links and settings button

App navigation is app-specific and not wrapped by the library. Apps implement their own MainMenu.vue using Nextcloud's NcAppNavigation. See Nextcloud Layout Components for the full API.