Skip to content

Plugins ​

Plugins are registered in nuxt.config.js and run at app init. Mode: client = client-only; otherwise SSR unless noted.

PluginModePurpose
vuelidate.jsSSRForm validation (Vuelidate)
helper.jsSSRGlobal helpers (e.g. $getErrorMessage, $sortBy, $toQueryString)
axios.jsssr: trueAxios: cancel tokens, rate limiting via apiRateLimiter, long-run overlay for action APIs; blocks non–access-check requests until workspace access verified
vue-async-computed.jsSSRAsync computed properties
event-bus.js(export)Exports EventBus (Vue instance) for programmatic use
vue-audio-visual.jsclientAudio visualizer component
disable-inspect.jsclientDisable devtools/inspect in production
vue-recaptcha-3.jsSSRreCAPTCHA v3
snackbar.jsclientSnackbar notifications ($snackbar / window.$snackbar)
streamsaver.client.jsclient, ssr: falseStreamSaver for streaming downloads
pwa-links.client.jsclientPWA-related link handling

| amplitude.js | client | Initialises Amplitude analytics (@amplitude/analytics-browser); registers $trackEvent on Vue.prototype; normalises nested/circular event properties; integrates with amplitude-session-replay plugin | | amplitude-session-replay.js | client | Amplitude Session Replay SDK (@amplitude/session-replay-browser); sampling rate controlled by AMPLITUDE_SESSION_REPLAY_SAMPLE_RATE env var (0 = disabled); syncs device/session ID from the main Amplitude instance | | branding.js | SSR | Registers branding mixin globally via Vue.mixin; makes branding helpers available on every component | | unregister-sw.client.js | client, ssr: false | Unregisters all service workers and clears caches on app load; prevents stale PWA cache from serving outdated assets |

Config notes ​

  • axios: Uses utils/cancelTokenManager.js and utils/apiRateLimiter.js. Action APIs (e.g. delete-file, add-tags-to-multiple-file) show a long-run overlay after 5s via loading/INCREMENT_API_LONG_RUNNING.
  • bus.js deleted: $bus is no longer registered. Use EventBus from ~/plugins/event-bus instead.
  • recaptcha / snackbar / PWA / StreamSaver: Client-only; depend on window or DOM.