Skip to content

Configuration

VueFinder provides a comprehensive configuration system that allows you to customize its behavior and appearance.

Config Options

All configuration options are passed via the config prop:

vue
<vue-finder
  id="my_vuefinder"
  :driver="driver"
  :config="{
    view: 'grid',
    theme: 'valorite',
    persist: true,
  }"
/>

Configuration Properties

PropertyTypeDefaultDescription
view'grid' | 'list''grid'View mode: grid or list
themeTheme'silver'Theme name (see Theming)
fullScreenbooleanfalseStart in full-screen mode
showTreeViewbooleanfalseShow sidebar tree view
expandTreeByDefaultbooleanfalseExpand storage root and first-level tree folders by default
expandedTreePathsstring[][]Paths that should be expanded in tree view (for targeted default expansion)
showHiddenFilesbooleantrueShow hidden files
metricUnitsbooleanfalseUse metric file sizes (KB, MB) instead of binary (KiB, MiB)
showThumbnailsbooleantrueShow image thumbnails
persistbooleanfalsePersist current path/config to localStorage
showMenuBarbooleantrueShow menu bar (non-persistent, resets on page reload)
showToolbarbooleantrueShow toolbar (non-persistent, resets on page reload)
initialPathstring | nullnullInitial path on mount
loadingIndicator'linear' | 'circular' | string'circular'Loading indicator style
maxFileSizenumber | string | nullnullMaximum file upload size (e.g., '10mb', '50mb')
pinnedFoldersDirEntry[][]Array of pinned folders
notificationsEnabledbooleantrueEnable/disable toast notifications
notificationPosition'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right''bottom-center'Toast position
notificationDurationnumber3000Toast duration in milliseconds
notificationVisibleToastsnumber4Max visible toasts at once
notificationRichColorsbooleantrueEnable rich toast colors
gridItemWidthnumber96Width of grid items in pixels
gridItemHeightnumber80Height of grid items in pixels
gridItemGapnumber8Gap between grid items in pixels
gridIconSizenumber48Size of icons in grid view (pixels)
listItemHeightnumber32Height of list items in pixels
listItemGapnumber2Gap between list items in pixels
listIconSizenumber16Size of icons in list view (pixels)

Examples

Basic Configuration

vue
<template>
  <vue-finder
    id="basic"
    :driver="driver"
    :config="{
      view: 'grid',
      theme: 'silver',
      persist: false,
    }"
  />
</template>

Advanced Configuration

vue
<template>
  <vue-finder
    id="advanced"
    :driver="driver"
    :config="{
      view: 'list',
      theme: 'valorite',
      fullScreen: false,
      showTreeView: true,
      showHiddenFiles: false,
      metricUnits: true,
      showThumbnails: true,
      persist: true,
      initialPath: 'local://documents',
      loadingIndicator: 'linear',
      maxFileSize: '50mb',
      pinnedFolders: [],
    }"
  />
</template>

With Persistence

When persist: true, VueFinder will save the current path to localStorage, allowing it to remember the last visited directory when the page is reloaded:

vue
<template>
  <vue-finder
    id="persistent"
    :driver="driver"
    :config="{
      persist: true,
      initialPath: 'local://',
    }"
  />
</template>

UI Visibility Settings

You can control the visibility of the menu bar and toolbar using the showMenuBar and showToolbar config options. These are non-persistent options that reset to their default values (true) on page reload.

For detailed examples and usage, see the UI Visibility example.

Notifications + @notify

You can keep event notifications while disabling built-in toast UI:

vue
<vue-finder
  id="notify"
  :driver="driver"
  :config="{
    notificationsEnabled: false,
    notificationDuration: 5000,
    notificationPosition: 'top-right',
  }"
  @notify="({ type, message }) => handleNotify(type, message)"
/>
  • notificationsEnabled: false hides toast popups.
  • @notify still emits { type, message } for external handling.

Tree Expansion

Use these options together for default tree expansion behavior:

vue
<vue-finder
  id="tree"
  :driver="driver"
  :config="{
    showTreeView: true,
    expandTreeByDefault: false,
    expandedTreePaths: ['local://documents', 'local://documents/work'],
  }"
/>
  • expandTreeByDefault: true expands storage roots and first level.
  • expandedTreePaths expands specific branches (and required parent nodes) by path.