Layout Components

Reusable layout components from components/layout/ and page layout wrappers from layouts/.

components/layout/OneColGrid.vue — Centered single-column layout with full height. Used for authentication flows (login, signup, password reset). Column width: md="7" xl="7".

default slot

Used in: login.vue, signup/index.vue, password-reset/index.vue

components/layout/TwoColsBlock.vue — Two-column layout with flexible column ratio. Columns reorder on mobile. Most commonly used layout component.

PropTypeDefaultDescription
splitColSplit"5/7"Column width ratio (e.g. "5/7", "6/6", "7/5")
orderColOrder['1','2']Desktop column order
mobileOrderColOrder['2','1']Mobile column order (content first)

Split 5/7 (default)

Content on left (5 cols), image/illustration on right (7 cols). Used for welcome, error, profile pages.

slot="left"
slot="right"
(typically ResponsiveImage)

Split 6/6 (equal)

slot="left" (6 cols)
slot="right" (6 cols)

Split 7/5 (content wider)

slot="left" (7 cols)
slot="right" (5 cols)

Used in: welcome.vue, declined.vue, change-password.vue, signed.vue, [...slug].vue

components/layout/TwoColsGrid.vue — Asymmetric two-column layout for marketing/showcase pages. Left column is wider with padding columns, right column is sticky sidebar. Desktop only — stacks on mobile.

slot="left"
Main content area (6 cols)
slot="right"
Sidebar (4 cols, sticky)

components/layout/ContentBlock.vue — Simple max-width container. Props: narrow (boolean) for narrower variant.

Default width

default slot
max-width: $site-width (830px)

Narrow

default slot (narrow)
max-width: $site-width-narrow

components/ColoredContainer.vue — Background color wrapper with padding. Used for highlighted form sections and card containers.

PropValues
color'grey' | 'grey-2' | 'blue' | 'green' | 'orange' | 'grey-light-4'
grey
grey-2
blue
green
orange
grey-light-4

layouts/unauthenticated.vue — Public pages layout for login, signup, password reset. SiteHeader with optional login/signup hints. Footer always shown.

Login
Signup
default slot
Typically wraps OneColGrid

Used in: login.vue, signup/index.vue, password-reset/*.vue

layouts/simple.vue — Minimal layout with optional header/footer. Header defaults to SiteHeader (logo-only). Footer hidden by default. Route meta: showHeader, showFooter.

default slot
Full-width content area

Used in: Profile pages, signup flows, direct-sign

layouts/starter.vue — Onboarding wizard layout. Centered white box (750px height) on purple-light background. Fixed width: md="9" lg="7".

default slot
Centered wizard form content

Used in: signup/starter/*.vue

layouts/main.vue — Primary application layout with app bar, sidebar navigation, optional sub-nav, banners, and widgets. Fixed app bar (80px desktop). Responsive drawer at lg+.

Documents
Profile
NAVIGATION
Dashboard
Documents
Templates
SETTINGS
Profile
Signature
slot="banner" (optional)
default slot
Main content (max-width: 830px or 1200px)

Slots: appbarContent, appbarNavigation, filterbar, banner, subNav, default, widgets, bottomNav

layouts/admin.vue — Business admin layout with sidebar and optional trial widget. Route meta: contentWidth ('full'|'wide'|default), sidebar (boolean for trial widget).

Business
Profile
BUSINESS
Dashboard
Members
Billing
Settings
Developers
default slot (9 cols)
Admin content area
sidebar
Trial widget (3 cols)

Used in: business/dashboard.vue, business/members/*.vue, business/billing/*.vue, business/settings.vue