This is where most components will find their place. The compounds folder is subdevided into 5 sub-categories. Components must be prefixed with the name of the sub-category (e.g. LayoutSection, ContentImage).

# Directory Structure

/components/
    /compounds/
        /accessibility/
        /content/
        /layout/
        /site/
        /ui/
1
2
3
4
5
6
7

# Accessibility Components

Components that improve accessibility of the site.

Naming Convention

Use prefix "Accessibility" on all components inside this folder.

# Content Components

Content components are containers for content. Each component is also in Storyblok. Prefix: "Content".

Naming Convention

Use prefix "Content" on all components inside this folder.

# Layout Components

Layout components are containers used for either visualy structuring (LayoutGrid), semantic structuring (LayoutSection) or represent entry types from Storyblok (LayoutPage). Each component is also in Storyblok. Prefix: "Layout".

Naming Convention

Use prefix "Layout" on all components inside this folder.

  • LayoutGrid - Simple grid with 2-4 columns and predefined wrapping points.
  • LayoutPage - LayoutPage component for Storyblok LayoutPage component.
  • LayoutSection - Semantic section with hideable headline.
  • LayoutSubSection - Semantic section with hideable headline.

# Site Components

Site components are components that you can find on almost every page, they are mostly used inside the nuxt layout components (nuxt-starter/layouts/). The content for these can be defined in the Settings component of Storyblok and are avaiable through the global store. Prefix: "Site".

Naming Convention

Use prefix "Site" on all components inside this folder.

  • SiteFooter - Footer with copyright, navigation and social links.
  • SiteHeader - Header with SiteLogo and SiteNavigation.
  • SiteLogo - Logo with link to homepage.
  • SiteNavigation - Basic Navigation for inside the SiteHeader component.
  • SiteSearch (BACKLOG) - Search field with preview.
  • SiteSocialLinks - Social links with icons.

# Ui Components

Components the user has to interact with. Prefix: "Ui".

Naming Convention

Use prefix "Ui" (not UI) on all components inside this folder.

Case Sensitivity

Please make sure you don't use uppercase "UI" for the prefix. This would result in the DOM template element being <u-i-notification> instead of the correct <ui-notification>.

  • UiAccordion - Single accordion, used inside UiAccordionGroup.
  • UiAccordionGroup - Group of UiAccordions, configure if only one accordion can be open at a time.
  • UiAutocomplete (BACKLOG) - Autocomplete input field, with suggestions.
  • UiCookieConsent - Cookie consent, gets saved to localstorage and store. State should disable trackers.
  • UiFlyout - Flyout
  • UiFlyoutTrigger - Flyout trigger
  • UiLanguageSwitch - Switch for languages.
  • UiLoadMore - Load next page of content into a container.
  • UiNotification - Multi-purpose fixed notification to show important information to the user. Can be closed and save close.
  • UiPagination - Pagination
  • UiScrollToTop - Fixed button for scrolling to the top of the page.
  • UiTabs (BACKLOG) - Tabs
  • UiTooltip (BACKLOG) - Show additional information to the user on focus and hover.