{"id":"ccd8259a-817e-4dbb-b449-0f97f22b00d3","shortId":"mdEnuT","kind":"skill","title":"vueuse-functions","tagline":"Apply VueUse composables where appropriate to build concise, maintainable Vue.js / Nuxt features.","description":"# VueUse Functions\n\nThis skill is a decision-and-implementation guide for VueUse composables in Vue.js / Nuxt projects. It maps requirements to the most suitable VueUse function, applies the correct usage pattern, and prefers composable-based solutions over bespoke code to keep implementations concise, maintainable, and performant.\n\n## When to Apply\n\n- Apply this skill whenever assisting user development work in Vue.js / Nuxt.\n- Always check first whether a VueUse function can implement the requirement.\n- Prefer VueUse composables over custom code to improve readability, maintainability, and performance.\n- Map requirements to the most appropriate VueUse function and follow the function’s invocation rule.\n- Please refer to the `Invocation` field in the below functions table. For example:\n  - `AUTO`: Use automatically when applicable.\n  - `EXTERNAL`: Use only if the user already installed the required external dependency; otherwise reconsider, and ask to install only if truly needed.\n  - `EXPLICIT_ONLY`: Use only when explicitly requested by the user.\n  > *NOTE* User instructions in the prompt or `AGENTS.md` may override a function’s default `Invocation` rule.\n\n## Functions\n\nAll functions listed below are part of the [VueUse](https://vueuse.org/) library, each section categorizes functions based on their functionality.\n\nIMPORTANT: Each function entry includes a short `Description` and a detailed `Reference`. When using any function, always consult the corresponding document in `./references` for Usage details and Type Declarations.\n\n### State\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`createGlobalState`](references/createGlobalState.md) | Keep states in the global scope to be reusable across Vue instances | AUTO |\n| [`createInjectionState`](references/createInjectionState.md) | Create global state that can be injected into components | AUTO |\n| [`createSharedComposable`](references/createSharedComposable.md) | Make a composable function usable with multiple Vue instances | AUTO |\n| [`injectLocal`](references/injectLocal.md) | Extended `inject` with ability to call `provideLocal` to provide the value in the same component | AUTO |\n| [`provideLocal`](references/provideLocal.md) | Extended `provide` with ability to call `injectLocal` to obtain the value in the same component | AUTO |\n| [`useAsyncState`](references/useAsyncState.md) | Reactive async state | AUTO |\n| [`useDebouncedRefHistory`](references/useDebouncedRefHistory.md) | Shorthand for `useRefHistory` with debounced filter | AUTO |\n| [`useLastChanged`](references/useLastChanged.md) | Records the timestamp of the last change | AUTO |\n| [`useLocalStorage`](references/useLocalStorage.md) | Reactive [LocalStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) | AUTO |\n| [`useManualRefHistory`](references/useManualRefHistory.md) | Manually track the change history of a ref when the user calls `commit()` | AUTO |\n| [`useRefHistory`](references/useRefHistory.md) | Track the change history of a ref | AUTO |\n| [`useSessionStorage`](references/useSessionStorage.md) | Reactive [SessionStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage) | AUTO |\n| [`useStorage`](references/useStorage.md) | Create a reactive ref that can be used to access & modify [LocalStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) or [SessionStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage) | AUTO |\n| [`useStorageAsync`](references/useStorageAsync.md) | Reactive Storage with async support | AUTO |\n| [`useThrottledRefHistory`](references/useThrottledRefHistory.md) | Shorthand for `useRefHistory` with throttled filter | AUTO |\n\n### Elements\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useActiveElement`](references/useActiveElement.md) | Reactive `document.activeElement` | AUTO |\n| [`useDocumentVisibility`](references/useDocumentVisibility.md) | Reactively track [`document.visibilityState`](https://developer.mozilla.org/en-US/docs/Web/API/Document/visibilityState) | AUTO |\n| [`useDraggable`](references/useDraggable.md) | Make elements draggable | AUTO |\n| [`useDropZone`](references/useDropZone.md) | Create a zone where files can be dropped | AUTO |\n| [`useElementBounding`](references/useElementBounding.md) | Reactive [bounding box](https://developer.mozilla.org/en-US/docs/Web/API/Element/getBoundingClientRect) of an HTML element | AUTO |\n| [`useElementSize`](references/useElementSize.md) | Reactive size of an HTML element | AUTO |\n| [`useElementVisibility`](references/useElementVisibility.md) | Tracks the visibility of an element within the viewport | AUTO |\n| [`useIntersectionObserver`](references/useIntersectionObserver.md) | Detects changes to a target element's visibility | AUTO |\n| [`useMouseInElement`](references/useMouseInElement.md) | Reactive mouse position related to an element | AUTO |\n| [`useMutationObserver`](references/useMutationObserver.md) | Watch for changes being made to the DOM tree | AUTO |\n| [`useParentElement`](references/useParentElement.md) | Get parent element of the given element | AUTO |\n| [`useResizeObserver`](references/useResizeObserver.md) | Reports changes to the dimensions of an Element's content or the border-box | AUTO |\n| [`useWindowFocus`](references/useWindowFocus.md) | Reactively track window focus with `window.onfocus` and `window.onblur` events | AUTO |\n| [`useWindowScroll`](references/useWindowScroll.md) | Reactive window scroll | AUTO |\n| [`useWindowSize`](references/useWindowSize.md) | Reactive window size | AUTO |\n\n### Browser\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useBluetooth`](references/useBluetooth.md) | Reactive [Web Bluetooth API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API) | AUTO |\n| [`useBreakpoints`](references/useBreakpoints.md) | Reactive viewport breakpoints | AUTO |\n| [`useBroadcastChannel`](references/useBroadcastChannel.md) | Reactive [BroadcastChannel API](https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel) | AUTO |\n| [`useBrowserLocation`](references/useBrowserLocation.md) | Reactive browser location | AUTO |\n| [`useClipboard`](references/useClipboard.md) | Reactive [Clipboard API](https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API) | AUTO |\n| [`useClipboardItems`](references/useClipboardItems.md) | Reactive [Clipboard API](https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API) | AUTO |\n| [`useColorMode`](references/useColorMode.md) | Reactive color mode (dark / light / customs) with auto data persistence | AUTO |\n| [`useCssSupports`](references/useCssSupports.md) | SSR compatible and reactive [`CSS.supports`](https://developer.mozilla.org/docs/Web/API/CSS/supports_static) | AUTO |\n| [`useCssVar`](references/useCssVar.md) | Manipulate CSS variables | AUTO |\n| [`useDark`](references/useDark.md) | Reactive dark mode with auto data persistence | AUTO |\n| [`useEventListener`](references/useEventListener.md) | Use EventListener with ease | AUTO |\n| [`useEyeDropper`](references/useEyeDropper.md) | Reactive [EyeDropper API](https://developer.mozilla.org/en-US/docs/Web/API/EyeDropper_API) | AUTO |\n| [`useFavicon`](references/useFavicon.md) | Reactive favicon | AUTO |\n| [`useFileDialog`](references/useFileDialog.md) | Open file dialog with ease | AUTO |\n| [`useFileSystemAccess`](references/useFileSystemAccess.md) | Create and read and write local files with [FileSystemAccessAPI](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API) | AUTO |\n| [`useFullscreen`](references/useFullscreen.md) | Reactive [Fullscreen API](https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API) | AUTO |\n| [`useGamepad`](references/useGamepad.md) | Provides reactive bindings for the [Gamepad API](https://developer.mozilla.org/en-US/docs/Web/API/Gamepad_API) | AUTO |\n| [`useImage`](references/useImage.md) | Reactive load an image in the browser | AUTO |\n| [`useMediaControls`](references/useMediaControls.md) | Reactive media controls for both `audio` and `video` elements | AUTO |\n| [`useMediaQuery`](references/useMediaQuery.md) | Reactive [Media Query](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Testing_media_queries) | AUTO |\n| [`useMemory`](references/useMemory.md) | Reactive Memory Info | AUTO |\n| [`useObjectUrl`](references/useObjectUrl.md) | Reactive URL representing an object | AUTO |\n| [`usePerformanceObserver`](references/usePerformanceObserver.md) | Observe performance metrics | AUTO |\n| [`usePermission`](references/usePermission.md) | Reactive [Permissions API](https://developer.mozilla.org/en-US/docs/Web/API/Permissions_API) | AUTO |\n| [`usePreferredColorScheme`](references/usePreferredColorScheme.md) | Reactive [prefers-color-scheme](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme) media query | AUTO |\n| [`usePreferredContrast`](references/usePreferredContrast.md) | Reactive [prefers-contrast](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-contrast) media query | AUTO |\n| [`usePreferredDark`](references/usePreferredDark.md) | Reactive dark theme preference | AUTO |\n| [`usePreferredLanguages`](references/usePreferredLanguages.md) | Reactive [Navigator Languages](https://developer.mozilla.org/en-US/docs/Web/API/NavigatorLanguage/languages) | AUTO |\n| [`usePreferredReducedMotion`](references/usePreferredReducedMotion.md) | Reactive [prefers-reduced-motion](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion) media query | AUTO |\n| [`usePreferredReducedTransparency`](references/usePreferredReducedTransparency.md) | Reactive [prefers-reduced-transparency](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-transparency) media query | AUTO |\n| [`useScreenOrientation`](references/useScreenOrientation.md) | Reactive [Screen Orientation API](https://developer.mozilla.org/en-US/docs/Web/API/Screen_Orientation_API) | AUTO |\n| [`useScreenSafeArea`](references/useScreenSafeArea.md) | Reactive `env(safe-area-inset-*)` | AUTO |\n| [`useScriptTag`](references/useScriptTag.md) | Creates a script tag | AUTO |\n| [`useShare`](references/useShare.md) | Reactive [Web Share API](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/share) | AUTO |\n| [`useSSRWidth`](references/useSSRWidth.md) | Used to set a global viewport width which will be used when rendering SSR components that rely on the viewport width like [`useMediaQuery`](../useMediaQuery/index.md) or [`useBreakpoints`](../useBreakpoints/index.md) | AUTO |\n| [`useStyleTag`](references/useStyleTag.md) | Inject reactive `style` element in head | AUTO |\n| [`useTextareaAutosize`](references/useTextareaAutosize.md) | Automatically update the height of a textarea depending on the content | AUTO |\n| [`useTextDirection`](references/useTextDirection.md) | Reactive [dir](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir) of the element's text | AUTO |\n| [`useTitle`](references/useTitle.md) | Reactive document title | AUTO |\n| [`useUrlSearchParams`](references/useUrlSearchParams.md) | Reactive [URLSearchParams](https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams) | AUTO |\n| [`useVibrate`](references/useVibrate.md) | Reactive [Vibration API](https://developer.mozilla.org/en-US/docs/Web/API/Vibration_API) | AUTO |\n| [`useWakeLock`](references/useWakeLock.md) | Reactive [Screen Wake Lock API](https://developer.mozilla.org/en-US/docs/Web/API/Screen_Wake_Lock_API) | AUTO |\n| [`useWebNotification`](references/useWebNotification.md) | Reactive [Notification](https://developer.mozilla.org/en-US/docs/Web/API/notification) | AUTO |\n| [`useWebWorker`](references/useWebWorker.md) | Simple [Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers) registration and communication | AUTO |\n| [`useWebWorkerFn`](references/useWebWorkerFn.md) | Run expensive functions without blocking the UI | AUTO |\n\n### Sensors\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`onClickOutside`](references/onClickOutside.md) | Listen for clicks outside of an element | AUTO |\n| [`onElementRemoval`](references/onElementRemoval.md) | Fires when the element or any element containing it is removed from the DOM | AUTO |\n| [`onKeyStroke`](references/onKeyStroke.md) | Listen for keyboard keystrokes | AUTO |\n| [`onLongPress`](references/onLongPress.md) | Listen for a long press on an element | AUTO |\n| [`onStartTyping`](references/onStartTyping.md) | Fires when users start typing on non-editable elements | AUTO |\n| [`useBattery`](references/useBattery.md) | Reactive [Battery Status API](https://developer.mozilla.org/en-US/docs/Web/API/Battery_Status_API) | AUTO |\n| [`useDeviceMotion`](references/useDeviceMotion.md) | Reactive [DeviceMotionEvent](https://developer.mozilla.org/en-US/docs/Web/API/DeviceMotionEvent) | AUTO |\n| [`useDeviceOrientation`](references/useDeviceOrientation.md) | Reactive [DeviceOrientationEvent](https://developer.mozilla.org/en-US/docs/Web/API/DeviceOrientationEvent) | AUTO |\n| [`useDevicePixelRatio`](references/useDevicePixelRatio.md) | Reactively track [`window.devicePixelRatio`](https://developer.mozilla.org/docs/Web/API/Window/devicePixelRatio) | AUTO |\n| [`useDevicesList`](references/useDevicesList.md) | Reactive [enumerateDevices](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/enumerateDevices) listing available input/output devices | AUTO |\n| [`useDisplayMedia`](references/useDisplayMedia.md) | Reactive [`mediaDevices.getDisplayMedia`](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getDisplayMedia) streaming | AUTO |\n| [`useElementByPoint`](references/useElementByPoint.md) | Reactive element by point | AUTO |\n| [`useElementHover`](references/useElementHover.md) | Reactive element's hover state | AUTO |\n| [`useFocus`](references/useFocus.md) | Reactive utility to track or set the focus state of a DOM element | AUTO |\n| [`useFocusWithin`](references/useFocusWithin.md) | Reactive utility to track if an element or one of its descendants has focus | AUTO |\n| [`useFps`](references/useFps.md) | Reactive FPS (frames per second) | AUTO |\n| [`useGeolocation`](references/useGeolocation.md) | Reactive [Geolocation API](https://developer.mozilla.org/en-US/docs/Web/API/Geolocation_API) | AUTO |\n| [`useIdle`](references/useIdle.md) | Tracks whether the user is being inactive | AUTO |\n| [`useInfiniteScroll`](references/useInfiniteScroll.md) | Infinite scrolling of the element | AUTO |\n| [`useKeyModifier`](references/useKeyModifier.md) | Reactive [Modifier State](https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/getModifierState) | AUTO |\n| [`useMagicKeys`](references/useMagicKeys.md) | Reactive keys pressed state | AUTO |\n| [`useMouse`](references/useMouse.md) | Reactive mouse position | AUTO |\n| [`useMousePressed`](references/useMousePressed.md) | Reactive mouse pressing state | AUTO |\n| [`useNavigatorLanguage`](references/useNavigatorLanguage.md) | Reactive [navigator.language](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/language) | AUTO |\n| [`useNetwork`](references/useNetwork.md) | Reactive [Network status](https://developer.mozilla.org/en-US/docs/Web/API/Network_Information_API) | AUTO |\n| [`useOnline`](references/useOnline.md) | Reactive online state | AUTO |\n| [`usePageLeave`](references/usePageLeave.md) | Reactive state to show whether the mouse leaves the page | AUTO |\n| [`useParallax`](references/useParallax.md) | Create parallax effect easily | AUTO |\n| [`usePointer`](references/usePointer.md) | Reactive [pointer state](https://developer.mozilla.org/en-US/docs/Web/API/Pointer_events) | AUTO |\n| [`usePointerLock`](references/usePointerLock.md) | Reactive [pointer lock](https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API) | AUTO |\n| [`usePointerSwipe`](references/usePointerSwipe.md) | Reactive swipe detection based on [PointerEvents](https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent) | AUTO |\n| [`useScroll`](references/useScroll.md) | Reactive scroll position and state | AUTO |\n| [`useScrollLock`](references/useScrollLock.md) | Lock scrolling of the element | AUTO |\n| [`useSpeechRecognition`](references/useSpeechRecognition.md) | Reactive [SpeechRecognition](https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition) | AUTO |\n| [`useSpeechSynthesis`](references/useSpeechSynthesis.md) | Reactive [SpeechSynthesis](https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesis) | AUTO |\n| [`useSwipe`](references/useSwipe.md) | Reactive swipe detection based on [`TouchEvents`](https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent) | AUTO |\n| [`useTextSelection`](references/useTextSelection.md) | Reactively track user text selection based on [`Window.getSelection`](https://developer.mozilla.org/en-US/docs/Web/API/Window/getSelection) | AUTO |\n| [`useUserMedia`](references/useUserMedia.md) | Reactive [`mediaDevices.getUserMedia`](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia) streaming | AUTO |\n\n### Network\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useEventSource`](references/useEventSource.md) | An [EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource) or [Server-Sent-Events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events) instance opens a persistent connection to an HTTP server | AUTO |\n| [`useFetch`](references/useFetch.md) | Reactive [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) provides the ability to abort requests | AUTO |\n| [`useWebSocket`](references/useWebSocket.md) | Reactive [WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/WebSocket) client | AUTO |\n\n### Animation\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useAnimate`](references/useAnimate.md) | Reactive [Web Animations API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Animations_API) | AUTO |\n| [`useInterval`](references/useInterval.md) | Reactive counter that increases on every interval | AUTO |\n| [`useIntervalFn`](references/useIntervalFn.md) | Wrapper for `setInterval` with controls | AUTO |\n| [`useNow`](references/useNow.md) | Reactive current Date instance | AUTO |\n| [`useRafFn`](references/useRafFn.md) | Call function on every `requestAnimationFrame` | AUTO |\n| [`useTimeout`](references/useTimeout.md) | Reactive value that becomes `true` after a given time | AUTO |\n| [`useTimeoutFn`](references/useTimeoutFn.md) | Wrapper for `setTimeout` with controls | AUTO |\n| [`useTimestamp`](references/useTimestamp.md) | Reactive current timestamp | AUTO |\n| [`useTransition`](references/useTransition.md) | Transition between values | AUTO |\n\n### Component\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`computedInject`](references/computedInject.md) | Combine `computed` and `inject` | AUTO |\n| [`createReusableTemplate`](references/createReusableTemplate.md) | Define and reuse template inside the component scope | AUTO |\n| [`createTemplatePromise`](references/createTemplatePromise.md) | Template as Promise | AUTO |\n| [`templateRef`](references/templateRef.md) | Shorthand for binding ref to template element | AUTO |\n| [`tryOnBeforeMount`](references/tryOnBeforeMount.md) | Safe `onBeforeMount` | AUTO |\n| [`tryOnBeforeUnmount`](references/tryOnBeforeUnmount.md) | Safe `onBeforeUnmount` | AUTO |\n| [`tryOnMounted`](references/tryOnMounted.md) | Safe `onMounted` | AUTO |\n| [`tryOnScopeDispose`](references/tryOnScopeDispose.md) | Safe `onScopeDispose` | AUTO |\n| [`tryOnUnmounted`](references/tryOnUnmounted.md) | Safe `onUnmounted` | AUTO |\n| [`unrefElement`](references/unrefElement.md) | Retrieves the underlying DOM element from a Vue ref or component instance | AUTO |\n| [`useCurrentElement`](references/useCurrentElement.md) | Get the DOM element of current component as a ref | AUTO |\n| [`useMounted`](references/useMounted.md) | Mounted state in ref | AUTO |\n| [`useTemplateRefsList`](references/useTemplateRefsList.md) | Shorthand for binding refs to template elements and components inside `v-for` | AUTO |\n| [`useVirtualList`](references/useVirtualList.md) | Create virtual lists with ease | AUTO |\n| [`useVModel`](references/useVModel.md) | Shorthand for v-model binding | AUTO |\n| [`useVModels`](references/useVModels.md) | Shorthand for props v-model binding | AUTO |\n\n### Watch\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`until`](references/until.md) | Promised one-time watch for changes | AUTO |\n| [`watchArray`](references/watchArray.md) | Watch for an array with additions and removals | AUTO |\n| [`watchAtMost`](references/watchAtMost.md) | `watch` with the number of times triggered | AUTO |\n| [`watchDebounced`](references/watchDebounced.md) | Debounced watch | AUTO |\n| [`watchDeep`](references/watchDeep.md) | Shorthand for watching value with `{deep: true}` | AUTO |\n| [`watchIgnorable`](references/watchIgnorable.md) | Ignorable watch | AUTO |\n| [`watchImmediate`](references/watchImmediate.md) | Shorthand for watching value with `{immediate: true}` | AUTO |\n| [`watchOnce`](references/watchOnce.md) | Shorthand for watching value with `{ once: true }` | AUTO |\n| [`watchPausable`](references/watchPausable.md) | Pausable watch | AUTO |\n| [`watchThrottled`](references/watchThrottled.md) | Throttled watch | AUTO |\n| [`watchTriggerable`](references/watchTriggerable.md) | Watch that can be triggered manually | AUTO |\n| [`watchWithFilter`](references/watchWithFilter.md) | `watch` with additional EventFilter control | AUTO |\n| [`whenever`](references/whenever.md) | Shorthand for watching value to be truthy | AUTO |\n\n### Reactivity\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`computedAsync`](references/computedAsync.md) | Computed for async functions | AUTO |\n| [`computedEager`](references/computedEager.md) | Eager computed without lazy evaluation | AUTO |\n| [`computedWithControl`](references/computedWithControl.md) | Explicitly define the dependencies of computed | AUTO |\n| [`createRef`](references/createRef.md) | Returns a `deepRef` or `shallowRef` depending on the `deep` param | AUTO |\n| [`extendRef`](references/extendRef.md) | Add extra attributes to Ref | AUTO |\n| [`reactify`](references/reactify.md) | Converts plain functions into reactive functions | AUTO |\n| [`reactifyObject`](references/reactifyObject.md) | Apply `reactify` to an object | AUTO |\n| [`reactiveComputed`](references/reactiveComputed.md) | Computed reactive object | AUTO |\n| [`reactiveOmit`](references/reactiveOmit.md) | Reactively omit fields from a reactive object | AUTO |\n| [`reactivePick`](references/reactivePick.md) | Reactively pick fields from a reactive object | AUTO |\n| [`refAutoReset`](references/refAutoReset.md) | A ref which will be reset to the default value after some time | AUTO |\n| [`refDebounced`](references/refDebounced.md) | Debounce execution of a ref value | AUTO |\n| [`refDefault`](references/refDefault.md) | Apply default value to a ref | AUTO |\n| [`refManualReset`](references/refManualReset.md) | Create a ref with manual reset functionality | AUTO |\n| [`refThrottled`](references/refThrottled.md) | Throttle changing of a ref value | AUTO |\n| [`refWithControl`](references/refWithControl.md) | Fine-grained controls over ref and its reactivity | AUTO |\n| [`syncRef`](references/syncRef.md) | Two-way refs synchronization | AUTO |\n| [`syncRefs`](references/syncRefs.md) | Keep target refs in sync with a source ref | AUTO |\n| [`toReactive`](references/toReactive.md) | Converts ref to reactive | AUTO |\n| [`toRef`](references/toRef.md) | Normalize value/ref/getter to `ref` or `computed` | EXPLICIT_ONLY |\n| [`toRefs`](references/toRefs.md) | Extended [`toRefs`](https://vuejs.org/api/reactivity-utilities.html#torefs) that also accepts refs of an object | AUTO |\n\n### Array\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useArrayDifference`](references/useArrayDifference.md) | Reactive get array difference of two arrays | AUTO |\n| [`useArrayEvery`](references/useArrayEvery.md) | Reactive `Array.every` | AUTO |\n| [`useArrayFilter`](references/useArrayFilter.md) | Reactive `Array.filter` | AUTO |\n| [`useArrayFind`](references/useArrayFind.md) | Reactive `Array.find` | AUTO |\n| [`useArrayFindIndex`](references/useArrayFindIndex.md) | Reactive `Array.findIndex` | AUTO |\n| [`useArrayFindLast`](references/useArrayFindLast.md) | Reactive `Array.findLast` | AUTO |\n| [`useArrayIncludes`](references/useArrayIncludes.md) | Reactive `Array.includes` | AUTO |\n| [`useArrayJoin`](references/useArrayJoin.md) | Reactive `Array.join` | AUTO |\n| [`useArrayMap`](references/useArrayMap.md) | Reactive `Array.map` | AUTO |\n| [`useArrayReduce`](references/useArrayReduce.md) | Reactive `Array.reduce` | AUTO |\n| [`useArraySome`](references/useArraySome.md) | Reactive `Array.some` | AUTO |\n| [`useArrayUnique`](references/useArrayUnique.md) | Reactive unique array | AUTO |\n| [`useSorted`](references/useSorted.md) | Reactive sort array | AUTO |\n\n### Time\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useCountdown`](references/useCountdown.md) | Reactive countdown timer in seconds | AUTO |\n| [`useDateFormat`](references/useDateFormat.md) | Get the formatted date according to the string of tokens passed in | AUTO |\n| [`useTimeAgo`](references/useTimeAgo.md) | Reactive time ago | AUTO |\n| [`useTimeAgoIntl`](references/useTimeAgoIntl.md) | Reactive time ago with i18n supported | AUTO |\n\n### Utilities\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`createDisposableDirective`](references/createDisposableDirective.md) | Utility for authoring disposable directives | AUTO |\n| [`createEventHook`](references/createEventHook.md) | Utility for creating event hooks | AUTO |\n| [`createUnrefFn`](references/createUnrefFn.md) | Make a plain function accepting ref and raw values as arguments | AUTO |\n| [`get`](references/get.md) | Shorthand for accessing `ref.value` | EXPLICIT_ONLY |\n| [`isDefined`](references/isDefined.md) | Non-nullish checking type guard for Ref | AUTO |\n| [`makeDestructurable`](references/makeDestructurable.md) | Make isomorphic destructurable for object and array at the same time | AUTO |\n| [`set`](references/set.md) | Shorthand for `ref.value = x` | EXPLICIT_ONLY |\n| [`useAsyncQueue`](references/useAsyncQueue.md) | Executes each asynchronous task sequentially and passes the current task result to the next task | AUTO |\n| [`useBase64`](references/useBase64.md) | Reactive base64 transforming | AUTO |\n| [`useCached`](references/useCached.md) | Cache a ref with a custom comparator | AUTO |\n| [`useCloned`](references/useCloned.md) | Reactive clone of a ref | AUTO |\n| [`useConfirmDialog`](references/useConfirmDialog.md) | Creates event hooks to support modals and confirmation dialog chains | AUTO |\n| [`useCounter`](references/useCounter.md) | Basic counter with utility functions | AUTO |\n| [`useCycleList`](references/useCycleList.md) | Cycle through a list of items | AUTO |\n| [`useDebounceFn`](references/useDebounceFn.md) | Debounce execution of a function | AUTO |\n| [`useEventBus`](references/useEventBus.md) | A basic event bus | AUTO |\n| [`useMemoize`](references/useMemoize.md) | Cache results of functions depending on arguments and keep it reactive | AUTO |\n| [`useOffsetPagination`](references/useOffsetPagination.md) | Reactive offset pagination | AUTO |\n| [`usePrevious`](references/usePrevious.md) | Holds the previous value of a ref | AUTO |\n| [`useStepper`](references/useStepper.md) | Provides helpers for building a multi-step wizard interface | AUTO |\n| [`useSupported`](references/useSupported.md) | SSR compatibility `isSupported` | AUTO |\n| [`useThrottleFn`](references/useThrottleFn.md) | Throttle execution of a function | AUTO |\n| [`useTimeoutPoll`](references/useTimeoutPoll.md) | Use timeout to poll something | AUTO |\n| [`useToggle`](references/useToggle.md) | A boolean switcher with utility functions | AUTO |\n| [`useToNumber`](references/useToNumber.md) | Reactively convert a string ref to number | AUTO |\n| [`useToString`](references/useToString.md) | Reactively convert a ref to string | AUTO |\n\n### @Electron\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useIpcRenderer`](references/useIpcRenderer.md) | Provides [ipcRenderer](https://www.electronjs.org/docs/api/ipc-renderer) and all of its APIs with Vue reactivity | EXTERNAL |\n| [`useIpcRendererInvoke`](references/useIpcRendererInvoke.md) | Reactive [ipcRenderer.invoke API](https://www.electronjs.org/docs/api/ipc-renderer#ipcrendererinvokechannel-args) result | EXTERNAL |\n| [`useIpcRendererOn`](references/useIpcRendererOn.md) | Use [ipcRenderer.on](https://www.electronjs.org/docs/api/ipc-renderer#ipcrendereronchannel-listener) with ease and [ipcRenderer.removeListener](https://www.electronjs.org/docs/api/ipc-renderer#ipcrendererremovelistenerchannel-listener) automatically on unmounted | EXTERNAL |\n| [`useZoomFactor`](references/useZoomFactor.md) | Reactive [WebFrame](https://www.electronjs.org/docs/api/web-frame#webframe) zoom factor | EXTERNAL |\n| [`useZoomLevel`](references/useZoomLevel.md) | Reactive [WebFrame](https://www.electronjs.org/docs/api/web-frame#webframe) zoom level | EXTERNAL |\n\n### @Firebase\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useAuth`](references/useAuth.md) | Reactive [Firebase Auth](https://firebase.google.com/docs/auth) binding | EXTERNAL |\n| [`useFirestore`](references/useFirestore.md) | Reactive [Firestore](https://firebase.google.com/docs/firestore) binding | EXTERNAL |\n| [`useRTDB`](references/useRTDB.md) | Reactive [Firebase Realtime Database](https://firebase.google.com/docs/database) binding | EXTERNAL |\n\n### @Head\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`createHead`](https://github.com/vueuse/head#api) | Create the head manager instance. | EXTERNAL |\n| [`useHead`](https://github.com/vueuse/head#api) | Update head meta tags reactively. | EXTERNAL |\n\n### @Integrations\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useAsyncValidator`](references/useAsyncValidator.md) | Wrapper for [`async-validator`](https://github.com/yiminghe/async-validator) | EXTERNAL |\n| [`useAxios`](references/useAxios.md) | Wrapper for [`axios`](https://github.com/axios/axios) | EXTERNAL |\n| [`useChangeCase`](references/useChangeCase.md) | Reactive wrapper for [`change-case`](https://github.com/blakeembrey/change-case) | EXTERNAL |\n| [`useCookies`](references/useCookies.md) | Wrapper for [`universal-cookie`](https://www.npmjs.com/package/universal-cookie) | EXTERNAL |\n| [`useDrauu`](references/useDrauu.md) | Reactive instance for [drauu](https://github.com/antfu/drauu) | EXTERNAL |\n| [`useFocusTrap`](references/useFocusTrap.md) | Reactive wrapper for [`focus-trap`](https://github.com/focus-trap/focus-trap) | EXTERNAL |\n| [`useFuse`](references/useFuse.md) | Easily implement fuzzy search using a composable with [Fuse.js](https://github.com/krisk/fuse) | EXTERNAL |\n| [`useIDBKeyval`](references/useIDBKeyval.md) | Wrapper for [`idb-keyval`](https://www.npmjs.com/package/idb-keyval) | EXTERNAL |\n| [`useJwt`](references/useJwt.md) | Wrapper for [`jwt-decode`](https://github.com/auth0/jwt-decode) | EXTERNAL |\n| [`useNProgress`](references/useNProgress.md) | Reactive wrapper for [`nprogress`](https://github.com/rstacruz/nprogress) | EXTERNAL |\n| [`useQRCode`](references/useQRCode.md) | Wrapper for [`qrcode`](https://github.com/soldair/node-qrcode) | EXTERNAL |\n| [`useSortable`](references/useSortable.md) | Wrapper for [`sortable`](https://github.com/SortableJS/Sortable) | EXTERNAL |\n\n### @Math\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`createGenericProjection`](references/createGenericProjection.md) | Generic version of `createProjection` | EXTERNAL |\n| [`createProjection`](references/createProjection.md) | Reactive numeric projection from one domain to another | EXTERNAL |\n| [`logicAnd`](references/logicAnd.md) | `AND` condition for refs | EXTERNAL |\n| [`logicNot`](references/logicNot.md) | `NOT` condition for ref | EXTERNAL |\n| [`logicOr`](references/logicOr.md) | `OR` conditions for refs | EXTERNAL |\n| [`useAbs`](references/useAbs.md) | Reactive `Math.abs` | EXTERNAL |\n| [`useAverage`](references/useAverage.md) | Get the average of an array reactively | EXTERNAL |\n| [`useCeil`](references/useCeil.md) | Reactive `Math.ceil` | EXTERNAL |\n| [`useClamp`](references/useClamp.md) | Reactively clamp a value between two other values | EXTERNAL |\n| [`useFloor`](references/useFloor.md) | Reactive `Math.floor` | EXTERNAL |\n| [`useMath`](references/useMath.md) | Reactive `Math` methods | EXTERNAL |\n| [`useMax`](references/useMax.md) | Reactive `Math.max` | EXTERNAL |\n| [`useMin`](references/useMin.md) | Reactive `Math.min` | EXTERNAL |\n| [`usePrecision`](references/usePrecision.md) | Reactively set the precision of a number | EXTERNAL |\n| [`useProjection`](references/useProjection.md) | Reactive numeric projection from one domain to another | EXTERNAL |\n| [`useRound`](references/useRound.md) | Reactive `Math.round` | EXTERNAL |\n| [`useSum`](references/useSum.md) | Get the sum of an array reactively | EXTERNAL |\n| [`useTrunc`](references/useTrunc.md) | Reactive `Math.trunc` | EXTERNAL |\n\n### @Motion\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useElementStyle`](https://motion.vueuse.org/api/use-element-style) | Sync a reactive object to a target element CSS styling | EXTERNAL |\n| [`useElementTransform`](https://motion.vueuse.org/api/use-element-transform) | Sync a reactive object to a target element CSS transform. | EXTERNAL |\n| [`useMotion`](https://motion.vueuse.org/api/use-motion) | Putting your components in motion. | EXTERNAL |\n| [`useMotionProperties`](https://motion.vueuse.org/api/use-motion-properties) | Access Motion Properties for a target element. | EXTERNAL |\n| [`useMotionVariants`](https://motion.vueuse.org/api/use-motion-variants) | Handle the Variants state and selection. | EXTERNAL |\n| [`useSpring`](https://motion.vueuse.org/api/use-spring) | Spring animations. | EXTERNAL |\n\n### @Router\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useRouteHash`](references/useRouteHash.md) | Shorthand for a reactive `route.hash` | EXTERNAL |\n| [`useRouteParams`](references/useRouteParams.md) | Shorthand for a reactive `route.params` | EXTERNAL |\n| [`useRouteQuery`](references/useRouteQuery.md) | Shorthand for a reactive `route.query` | EXTERNAL |\n\n### @RxJS\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`from`](references/from.md) | Wrappers around RxJS's [`from()`](https://rxjs.dev/api/index/function/from) and [`fromEvent()`](https://rxjs.dev/api/index/function/fromEvent) to allow them to accept `ref`s | EXTERNAL |\n| [`toObserver`](references/toObserver.md) | Sugar function to convert a `ref` into an RxJS [Observer](https://rxjs.dev/guide/observer) | EXTERNAL |\n| [`useExtractedObservable`](references/useExtractedObservable.md) | Use an RxJS [`Observable`](https://rxjs.dev/guide/observable) as extracted from one or more composables | EXTERNAL |\n| [`useObservable`](references/useObservable.md) | Use an RxJS [`Observable`](https://rxjs.dev/guide/observable) | EXTERNAL |\n| [`useSubject`](references/useSubject.md) | Bind an RxJS [`Subject`](https://rxjs.dev/guide/subject) to a `ref` and propagate value changes both ways | EXTERNAL |\n| [`useSubscription`](references/useSubscription.md) | Use an RxJS [`Subscription`](https://rxjs.dev/guide/subscription) without worrying about unsubscribing from it or creating memory leaks | EXTERNAL |\n| [`watchExtractedObservable`](references/watchExtractedObservable.md) | Watch the values of an RxJS [`Observable`](https://rxjs.dev/guide/observable) as extracted from one or more composables | EXTERNAL |\n\n### @SchemaOrg\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`createSchemaOrg`](https://vue-schema-org.netlify.app/api/core/create-schema-org.html) | Create the schema.org manager instance. | EXTERNAL |\n| [`useSchemaOrg`](https://vue-schema-org.netlify.app/api/core/use-schema-org.html) | Update schema.org reactively. | EXTERNAL |\n\n### @Sound\n\n| Function | Description | Invocation |\n|----------|-------------|------------|\n| [`useSound`](https://github.com/vueuse/sound#examples) | Play sound effects reactively. | EXTERNAL |","tags":["vueuse","functions","skills","agent-skills","agents","vue"],"capabilities":["skill","source-vueuse","skill-vueuse-functions","topic-agent-skills","topic-agents","topic-skills","topic-vue","topic-vueuse"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/vueuse/skills/vueuse-functions","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add vueuse/skills","source_repo":"https://github.com/vueuse/skills","install_from":"skills.sh"}},"qualityScore":"0.630","qualityRationale":"deterministic score 0.63 from registry signals: · indexed on github topic:agent-skills · 360 github stars · SKILL.md body (36,974 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:54:28.933Z","embedding":null,"createdAt":"2026-04-18T22:02:36.486Z","updatedAt":"2026-05-18T18:54:28.933Z","lastSeenAt":"2026-05-18T18:54:28.933Z","tsv":"'/)':194 '/antfu/drauu)':2543 '/api/core/create-schema-org.html)':2996 '/api/core/use-schema-org.html)':3006 '/api/index/function/from)':2873 '/api/index/function/fromevent)':2878 '/api/reactivity-utilities.html#torefs)':1980 '/api/use-element-style)':2765 '/api/use-element-transform)':2780 '/api/use-motion)':2795 '/api/use-motion-properties)':2805 '/api/use-motion-variants)':2817 '/api/use-spring)':2828 '/auth0/jwt-decode)':2592 '/axios/axios)':2510 '/blakeembrey/change-case)':2522 '/docs/api/ipc-renderer#ipcrendererinvokechannel-args)':2389 '/docs/api/ipc-renderer#ipcrendereronchannel-listener)':2398 '/docs/api/ipc-renderer#ipcrendererremovelistenerchannel-listener)':2405 '/docs/api/ipc-renderer)':2372 '/docs/api/web-frame#webframe)':2416,2426 '/docs/auth)':2441 '/docs/database)':2461 '/docs/firestore)':2450 '/docs/web/api/css/supports_static)':648 '/docs/web/api/window/devicepixelratio)':1120 '/en-us/docs/web/api/battery_status_api)':1095 '/en-us/docs/web/api/broadcastchannel)':600 '/en-us/docs/web/api/clipboard_api)':615,624 '/en-us/docs/web/api/devicemotionevent)':1103 '/en-us/docs/web/api/deviceorientationevent)':1111 '/en-us/docs/web/api/document/visibilitystate)':435 '/en-us/docs/web/api/element/getboundingclientrect)':461 '/en-us/docs/web/api/eventsource)':1405 '/en-us/docs/web/api/eyedropper_api)':680 '/en-us/docs/web/api/fetch_api)':1431 '/en-us/docs/web/api/file_system_access_api)':708 '/en-us/docs/web/api/fullscreen_api)':717 '/en-us/docs/web/api/gamepad_api)':730 '/en-us/docs/web/api/geolocation_api)':1206 '/en-us/docs/web/api/keyboardevent/getmodifierstate)':1233 '/en-us/docs/web/api/mediadevices/enumeratedevices)':1128 '/en-us/docs/web/api/mediadevices/getdisplaymedia)':1140 '/en-us/docs/web/api/mediadevices/getusermedia)':1392 '/en-us/docs/web/api/navigator/language)':1261 '/en-us/docs/web/api/navigator/share)':893 '/en-us/docs/web/api/navigatorlanguage/languages)':831 '/en-us/docs/web/api/network_information_api)':1270 '/en-us/docs/web/api/notification)':1001 '/en-us/docs/web/api/permissions_api)':790 '/en-us/docs/web/api/pointer_events)':1305 '/en-us/docs/web/api/pointer_lock_api)':1314 '/en-us/docs/web/api/pointerevent)':1326 '/en-us/docs/web/api/screen_orientation_api)':867 '/en-us/docs/web/api/screen_wake_lock_api)':993 '/en-us/docs/web/api/server-sent_events)':1413 '/en-us/docs/web/api/speechrecognition)':1350 '/en-us/docs/web/api/speechsynthesis)':1358 '/en-us/docs/web/api/touchevent)':1370 '/en-us/docs/web/api/urlsearchparams)':973 '/en-us/docs/web/api/vibration_api)':982 '/en-us/docs/web/api/web_animations_api)':1460 '/en-us/docs/web/api/web_bluetooth_api)':585 '/en-us/docs/web/api/web_workers_api/using_web_workers)':1010 '/en-us/docs/web/api/websocket/websocket)':1445 '/en-us/docs/web/api/window/getselection)':1384 '/en-us/docs/web/api/window/localstorage)':343,395 '/en-us/docs/web/api/window/sessionstorage)':377,400 '/en-us/docs/web/css/@media/prefers-color-scheme)':801 '/en-us/docs/web/css/@media/prefers-contrast)':813 '/en-us/docs/web/css/@media/prefers-reduced-motion)':842 '/en-us/docs/web/css/@media/prefers-reduced-transparency)':855 '/en-us/docs/web/css/media_queries/testing_media_queries)':761 '/en-us/docs/web/html/global_attributes/dir)':954 '/focus-trap/focus-trap)':2555 '/guide/observable)':2911,2928,2980 '/guide/observer)':2901 '/guide/subject)':2938 '/guide/subscription)':2957 '/krisk/fuse)':2570 '/package/idb-keyval)':2581 '/package/universal-cookie)':2533 '/references':226 '/rstacruz/nprogress)':2602 '/soldair/node-qrcode)':2611 '/sortablejs/sortable)':2620 '/usebreakpoints/index.md':923 '/usemediaquery/index.md':920 '/vueuse/head#api)':2471,2481 '/vueuse/sound#examples)':3018 '/yiminghe/async-validator)':2501 'abil':281,299,1434 'abort':1436 'accept':1983,2133,2883 'access':390,2145,2806 'accord':2083 'across':248 'add':1823 'addit':1689,1766 'agents.md':173 'ago':2096,2102 'allow':2880 'alreadi':140 'also':1982 'alway':78,220 'anim':1448,1456,2830 'anoth':2642,2736 'api':582,597,612,621,677,714,727,787,864,890,979,990,1092,1203,1428,1457,2377,2386 'appli':4,43,66,67,1840,1899 'applic':133 'appropri':8,106 'area':875 'argument':2139,2277 'around':2867 'array':1687,1989,1997,2001,2057,2063,2168,2677,2750 'array.every':2006 'array.filter':2011 'array.find':2016 'array.findindex':2021 'array.findlast':2026 'array.includes':2031 'array.join':2036 'array.map':2041 'array.reduce':2046 'array.some':2051 'ask':149 'assist':71 'async':315,407,1788,2497 'async-valid':2496 'asynchron':2186 'attribut':1825 'audio':749 'auth':2438 'author':2115 'auto':129,251,263,275,293,311,317,326,336,344,360,370,378,401,409,418,427,436,442,453,466,475,487,498,508,520,530,548,560,566,572,586,592,601,607,616,625,635,638,649,655,662,665,672,681,686,694,709,718,731,741,753,762,768,776,782,791,804,816,823,832,845,858,868,877,884,894,924,933,947,960,966,974,983,994,1002,1014,1024,1038,1055,1062,1073,1086,1096,1104,1112,1121,1133,1142,1149,1157,1173,1190,1198,1207,1217,1225,1234,1241,1247,1254,1262,1271,1277,1290,1297,1306,1315,1327,1335,1343,1351,1359,1371,1385,1394,1423,1438,1447,1461,1471,1479,1486,1494,1506,1514,1520,1526,1537,1548,1554,1564,1569,1574,1579,1584,1589,1604,1617,1624,1640,1648,1657,1667,1681,1692,1702,1707,1717,1722,1732,1742,1747,1752,1761,1769,1779,1790,1798,1807,1820,1828,1837,1845,1851,1861,1871,1887,1896,1905,1915,1924,1936,1944,1956,1963,1988,2002,2007,2012,2017,2022,2027,2032,2037,2042,2047,2052,2058,2064,2076,2091,2097,2106,2118,2126,2140,2159,2173,2199,2205,2215,2223,2236,2244,2253,2261,2268,2282,2288,2298,2311,2317,2325,2333,2342,2352,2361 'automat':131,936,2406 'avail':1130 'averag':2674 'axio':2507 'base':52,200,1321,1365,1379 'base64':2203 'basic':2239,2265 'batteri':1090 'becom':1500 'bespok':55 'bind':723,1559,1629,1656,1666,2442,2451,2462,2932 'block':1021 'bluetooth':581 'boolean':2337 'border':546 'border-box':545 'bound':457 'box':458,547 'breakpoint':591 'broadcastchannel':596 'browser':573,605,740 'build':10,2304 'bus':2267 'cach':2208,2271 'call':283,301,358,1489 'case':2519 'categor':198 'chain':2235 'chang':335,350,365,491,513,534,1680,1919,2518,2945 'change-cas':2517 'check':79,2154 'clamp':2688 'click':1033 'client':1446 'clipboard':611,620 'clone':2219 'code':56,94 'color':629,797 'combin':1533 'commit':359 'communic':1013 'compar':2214 'compat':642,2315 'compon':262,292,310,911,1527,1546,1602,1613,1635,2798 'compos':6,29,51,91,268,2565,2918,2987 'composable-bas':50 'comput':1534,1786,1794,1806,1848,1971 'computedasync':1784 'computedeag':1791 'computedinject':1531 'computedwithcontrol':1799 'concis':11,60 'condit':2647,2654,2661 'confirm':2233 'connect':1418 'consult':221 'contain':1048 'content':542,946 'contrast':810 'control':746,1478,1513,1768,1930 'convert':1831,1959,2346,2356,2892 'cooki':2530 'correct':45 'correspond':223 'countdown':2072 'counter':1465,2240 'creat':254,381,445,697,880,1293,1643,1908,2123,2226,2472,2965,2997 'createdisposabledirect':2111 'createeventhook':2119 'creategenericproject':2626 'createglobalst':237 'createhead':2468 'createinjectionst':252 'createproject':2631,2633 'createref':1808 'createreusabletempl':1538 'createschemaorg':2993 'createsharedcompos':264 'createtemplatepromis':1549 'createunreffn':2127 'css':653,2774,2789 'css.supports':645 'current':1483,1518,1612,2192 'custom':93,633,2213 'cycl':2247 'dark':631,659,820 'data':636,663 'databas':2458 'date':1484,2082 'debounc':324,1705,1890,2256 'decis':23 'decision-and-implement':22 'declar':232 'decod':2589 'deep':1715,1818 'deepref':1812 'default':179,1882,1900 'defin':1540,1802 'depend':145,943,1804,1815,2275 'descend':1187 'descript':211,235,421,575,1027,1397,1450,1529,1670,1782,1991,2067,2109,2364,2432,2466,2490,2624,2760,2834,2862,2991,3013 'destructur':2164 'detail':214,229 'detect':490,1320,1364 'develop':73 'developer.mozilla.org':342,376,394,399,434,460,584,599,614,623,647,679,707,716,729,760,789,800,812,830,841,854,866,892,953,972,981,992,1000,1009,1094,1102,1110,1119,1127,1139,1205,1232,1260,1269,1304,1313,1325,1349,1357,1369,1383,1391,1404,1412,1430,1444,1459 'developer.mozilla.org/docs/web/api/css/supports_static)':646 'developer.mozilla.org/docs/web/api/window/devicepixelratio)':1118 'developer.mozilla.org/en-us/docs/web/api/battery_status_api)':1093 'developer.mozilla.org/en-us/docs/web/api/broadcastchannel)':598 'developer.mozilla.org/en-us/docs/web/api/clipboard_api)':613,622 'developer.mozilla.org/en-us/docs/web/api/devicemotionevent)':1101 'developer.mozilla.org/en-us/docs/web/api/deviceorientationevent)':1109 'developer.mozilla.org/en-us/docs/web/api/document/visibilitystate)':433 'developer.mozilla.org/en-us/docs/web/api/element/getboundingclientrect)':459 'developer.mozilla.org/en-us/docs/web/api/eventsource)':1403 'developer.mozilla.org/en-us/docs/web/api/eyedropper_api)':678 'developer.mozilla.org/en-us/docs/web/api/fetch_api)':1429 'developer.mozilla.org/en-us/docs/web/api/file_system_access_api)':706 'developer.mozilla.org/en-us/docs/web/api/fullscreen_api)':715 'developer.mozilla.org/en-us/docs/web/api/gamepad_api)':728 'developer.mozilla.org/en-us/docs/web/api/geolocation_api)':1204 'developer.mozilla.org/en-us/docs/web/api/keyboardevent/getmodifierstate)':1231 'developer.mozilla.org/en-us/docs/web/api/mediadevices/enumeratedevices)':1126 'developer.mozilla.org/en-us/docs/web/api/mediadevices/getdisplaymedia)':1138 'developer.mozilla.org/en-us/docs/web/api/mediadevices/getusermedia)':1390 'developer.mozilla.org/en-us/docs/web/api/navigator/language)':1259 'developer.mozilla.org/en-us/docs/web/api/navigator/share)':891 'developer.mozilla.org/en-us/docs/web/api/navigatorlanguage/languages)':829 'developer.mozilla.org/en-us/docs/web/api/network_information_api)':1268 'developer.mozilla.org/en-us/docs/web/api/notification)':999 'developer.mozilla.org/en-us/docs/web/api/permissions_api)':788 'developer.mozilla.org/en-us/docs/web/api/pointer_events)':1303 'developer.mozilla.org/en-us/docs/web/api/pointer_lock_api)':1312 'developer.mozilla.org/en-us/docs/web/api/pointerevent)':1324 'developer.mozilla.org/en-us/docs/web/api/screen_orientation_api)':865 'developer.mozilla.org/en-us/docs/web/api/screen_wake_lock_api)':991 'developer.mozilla.org/en-us/docs/web/api/server-sent_events)':1411 'developer.mozilla.org/en-us/docs/web/api/speechrecognition)':1348 'developer.mozilla.org/en-us/docs/web/api/speechsynthesis)':1356 'developer.mozilla.org/en-us/docs/web/api/touchevent)':1368 'developer.mozilla.org/en-us/docs/web/api/urlsearchparams)':971 'developer.mozilla.org/en-us/docs/web/api/vibration_api)':980 'developer.mozilla.org/en-us/docs/web/api/web_animations_api)':1458 'developer.mozilla.org/en-us/docs/web/api/web_bluetooth_api)':583 'developer.mozilla.org/en-us/docs/web/api/web_workers_api/using_web_workers)':1008 'developer.mozilla.org/en-us/docs/web/api/websocket/websocket)':1443 'developer.mozilla.org/en-us/docs/web/api/window/getselection)':1382 'developer.mozilla.org/en-us/docs/web/api/window/localstorage)':341,393 'developer.mozilla.org/en-us/docs/web/api/window/sessionstorage)':375,398 'developer.mozilla.org/en-us/docs/web/css/@media/prefers-color-scheme)':799 'developer.mozilla.org/en-us/docs/web/css/@media/prefers-contrast)':811 'developer.mozilla.org/en-us/docs/web/css/@media/prefers-reduced-motion)':840 'developer.mozilla.org/en-us/docs/web/css/@media/prefers-reduced-transparency)':853 'developer.mozilla.org/en-us/docs/web/css/media_queries/testing_media_queries)':759 'developer.mozilla.org/en-us/docs/web/html/global_attributes/dir)':952 'devic':1132 'devicemotionev':1100 'deviceorientationev':1108 'dialog':691,2234 'differ':1998 'dimens':537 'dir':951 'direct':2117 'dispos':2116 'document':224,964 'document.activeelement':426 'document.visibilitystate':432 'dom':518,1054,1171,1595,1609 'domain':2640,2734 'draggabl':441 'drauu':2540 'drop':452 'eager':1793 'eas':671,693,1647,2400 'easili':1296,2559 'edit':1084 'effect':1295,3021 'electron':2362 'element':419,440,465,474,483,495,507,525,529,540,752,930,957,1037,1044,1047,1072,1085,1146,1153,1172,1182,1224,1342,1563,1596,1610,1633,2773,2788,2812 'entri':207 'enumeratedevic':1125 'env':872 'evalu':1797 'event':559,1410,2124,2227,2266 'eventfilt':1767 'eventlisten':669 'eventsourc':1402 'everi':1469,1492 'exampl':128 'execut':1891,2184,2257,2321 'expens':1018 'explicit':156,161,1801,1972,2147,2180 'extend':278,296,1976 'extendref':1821 'extern':134,144,2381,2391,2409,2419,2429,2443,2452,2463,2477,2487,2502,2511,2523,2534,2544,2556,2571,2582,2593,2603,2612,2621,2632,2643,2650,2657,2664,2669,2679,2684,2695,2700,2706,2711,2716,2726,2737,2742,2752,2757,2776,2791,2801,2813,2824,2831,2843,2851,2859,2886,2902,2919,2929,2948,2968,2988,3002,3010,3023 'extra':1824 'extract':2913,2982 'eyedropp':676 'factor':2418 'favicon':685 'featur':15 'fetch':1427 'field':121,1856,1866 'file':449,690,703 'filesystemaccessapi':705 'filter':325,417 'fine':1928 'fine-grain':1927 'fire':1041,1076 'firebas':2430,2437,2456 'firebase.google.com':2440,2449,2460 'firebase.google.com/docs/auth)':2439 'firebase.google.com/docs/database)':2459 'firebase.google.com/docs/firestore)':2448 'firestor':2447 'first':80 'focus':554,1167,1189,2551 'focus-trap':2550 'follow':110 'format':2081 'fps':1194 'frame':1195 'fromev':2875 'fullscreen':713 'function':3,17,42,84,108,112,125,177,182,184,199,203,206,219,234,269,420,574,1019,1026,1396,1449,1490,1528,1669,1781,1789,1833,1836,1914,1990,2066,2108,2132,2243,2260,2274,2324,2341,2363,2431,2465,2489,2623,2759,2833,2861,2890,2990,3012 'fuse.js':2567 'fuzzi':2561 'gamepad':726 'generic':2628 'geoloc':1202 'get':523,1607,1996,2079,2141,2672,2745 'github.com':2470,2480,2500,2509,2521,2542,2554,2569,2591,2601,2610,2619,3017 'github.com/antfu/drauu)':2541 'github.com/auth0/jwt-decode)':2590 'github.com/axios/axios)':2508 'github.com/blakeembrey/change-case)':2520 'github.com/focus-trap/focus-trap)':2553 'github.com/krisk/fuse)':2568 'github.com/rstacruz/nprogress)':2600 'github.com/soldair/node-qrcode)':2609 'github.com/sortablejs/sortable)':2618 'github.com/vueuse/head#api)':2469,2479 'github.com/vueuse/sound#examples)':3016 'github.com/yiminghe/async-validator)':2499 'given':528,1504 'global':243,255,901 'grain':1929 'guard':2156 'guid':26 'handl':2818 'head':932,2464,2474,2483 'height':939 'helper':2302 'histori':351,366 'hold':2291 'hook':2125,2228 'hover':1155 'html':464,473 'http':1421 'i18n':2104 'idb':2577 'idb-keyv':2576 'ignor':1720 'imag':737 'immedi':1730 'implement':25,59,86,2560 'import':204 'improv':96 'inact':1216 'includ':208 'increas':1467 'infinit':1220 'info':767 'inject':260,279,927,1536 'injectloc':276,302 'input/output':1131 'inset':876 'insid':1544,1636 'instal':141,151 'instanc':250,274,1414,1485,1603,2476,2538,3001 'instruct':168 'integr':2488 'interfac':2310 'interv':1470 'invoc':114,120,180,236,422,576,1028,1398,1451,1530,1671,1783,1992,2068,2110,2365,2433,2467,2491,2625,2761,2835,2863,2992,3014 'ipcrender':2369 'ipcrenderer.invoke':2385 'ipcrenderer.on':2395 'ipcrenderer.removelistener':2402 'isdefin':2149 'isomorph':2163 'issupport':2316 'item':2252 'jwt':2588 'jwt-decod':2587 'keep':58,239,1947,2279 'key':1238 'keyboard':1060 'keystrok':1061 'keyval':2578 'languag':828 'last':334 'lazi':1796 'leak':2967 'leav':1287 'level':2428 'librari':195 'light':632 'like':918 'list':185,1129,1645,2250 'listen':1031,1058,1065 'load':735 'local':702 'localstorag':340,392 'locat':606 'lock':989,1311,1338 'logicand':2644 'logicnot':2651 'logicor':2658 'long':1068 'made':515 'maintain':12,61,98 'make':266,439,2129,2162 'makedestructur':2160 'manag':2475,3000 'manipul':652 'manual':347,1760,1912 'map':35,101 'math':2622,2704 'math.abs':2668 'math.ceil':2683 'math.floor':2699 'math.max':2710 'math.min':2715 'math.round':2741 'math.trunc':2756 'may':174 'media':745,757,802,814,843,856 'mediadevices.getdisplaymedia':1137 'mediadevices.getusermedia':1389 'memori':766,2966 'meta':2484 'method':2705 'metric':781 'modal':2231 'mode':630,660 'model':1655,1665 'modifi':391,1229 'motion':839,2758,2800,2807 'motion.vueuse.org':2764,2779,2794,2804,2816,2827 'motion.vueuse.org/api/use-element-style)':2763 'motion.vueuse.org/api/use-element-transform)':2778 'motion.vueuse.org/api/use-motion)':2793 'motion.vueuse.org/api/use-motion-properties)':2803 'motion.vueuse.org/api/use-motion-variants)':2815 'motion.vueuse.org/api/use-spring)':2826 'mount':1620 'mous':502,1245,1251,1286 'multi':2307 'multi-step':2306 'multipl':272 'navig':827 'navigator.language':1258 'need':155 'network':1266,1395 'next':2197 'non':1083,2152 'non-edit':1082 'non-nullish':2151 'normal':1966 'note':166 'notif':998 'nprogress':2599 'nullish':2153 'number':1698,2351,2725 'numer':2636,2730 'nuxt':14,32,77 'object':775,1844,1850,1860,1870,1987,2166,2769,2784 'observ':779,2898,2908,2925,2977 'obtain':304 'offset':2286 'omit':1855 'onbeforemount':1568 'onbeforeunmount':1573 'onclickoutsid':1029 'one':1184,1676,2639,2733,2915,2984 'one-tim':1675 'onelementremov':1039 'onkeystrok':1056 'onlin':1275 'onlongpress':1063 'onmount':1578 'onscopedispos':1583 'onstarttyp':1074 'onunmount':1588 'open':689,1415 'orient':863 'otherwis':146 'outsid':1034 'overrid':175 'page':1289 'pagin':2287 'parallax':1294 'param':1819 'parent':524 'part':188 'pass':2089,2190 'pattern':47 'pausabl':1745 'per':1196 'perform':63,100,780 'permiss':786 'persist':637,664,1417 'pick':1865 'plain':1832,2131 'play':3019 'pleas':116 'point':1148 'pointer':1301,1310 'pointerev':1323 'poll':2331 'posit':503,1246,1332 'precis':2722 'prefer':49,89,796,809,822,837,850 'prefers-color-schem':795 'prefers-contrast':808 'prefers-reduced-mot':836 'prefers-reduced-transpar':849 'press':1069,1239,1252 'previous':2293 'project':33,2637,2731 'promis':1553,1674 'prompt':171 'prop':1662 'propag':2943 'properti':2808 'provid':286,297,721,1432,2301,2368 'provideloc':284,294 'put':2796 'qrcode':2608 'queri':758,803,815,844,857 'raw':2136 'reactifi':1829,1841 'reactifyobject':1838 'reactiv':314,339,373,383,404,425,430,456,469,501,551,563,569,579,589,595,604,610,619,628,644,658,675,684,712,722,734,744,756,765,771,785,794,807,819,826,835,848,861,871,887,928,950,963,969,977,986,997,1089,1099,1107,1115,1124,1136,1145,1152,1160,1176,1193,1201,1228,1237,1244,1250,1257,1265,1274,1280,1300,1309,1318,1330,1346,1354,1362,1374,1388,1426,1441,1454,1464,1482,1497,1517,1780,1835,1849,1854,1859,1864,1869,1935,1962,1995,2005,2010,2015,2020,2025,2030,2035,2040,2045,2050,2055,2061,2071,2094,2100,2202,2218,2281,2285,2345,2355,2380,2384,2412,2422,2436,2446,2455,2486,2514,2537,2547,2596,2635,2667,2678,2682,2687,2698,2703,2709,2714,2719,2729,2740,2751,2755,2768,2783,2841,2849,2857,3009,3022 'reactivecomput':1846 'reactiveomit':1852 'reactivepick':1862 'read':699 'readabl':97 'realtim':2457 'reconsid':147 'record':329 'reduc':838,851 'ref':354,369,384,1560,1600,1616,1623,1630,1827,1875,1894,1904,1910,1922,1932,1942,1949,1955,1960,1969,1984,2134,2158,2210,2222,2297,2349,2358,2649,2656,2663,2884,2894,2941 'ref.value':2146,2178 'refautoreset':1872 'refdebounc':1888 'refdefault':1897 'refer':117,215 'references/computedasync.md':1785 'references/computedeager.md':1792 'references/computedinject.md':1532 'references/computedwithcontrol.md':1800 'references/createdisposabledirective.md':2112 'references/createeventhook.md':2120 'references/creategenericprojection.md':2627 'references/createglobalstate.md':238 'references/createinjectionstate.md':253 'references/createprojection.md':2634 'references/createref.md':1809 'references/createreusabletemplate.md':1539 'references/createsharedcomposable.md':265 'references/createtemplatepromise.md':1550 'references/createunreffn.md':2128 'references/extendref.md':1822 'references/from.md':2865 'references/get.md':2142 'references/injectlocal.md':277 'references/isdefined.md':2150 'references/logicand.md':2645 'references/logicnot.md':2652 'references/logicor.md':2659 'references/makedestructurable.md':2161 'references/onclickoutside.md':1030 'references/onelementremoval.md':1040 'references/onkeystroke.md':1057 'references/onlongpress.md':1064 'references/onstarttyping.md':1075 'references/providelocal.md':295 'references/reactify.md':1830 'references/reactifyobject.md':1839 'references/reactivecomputed.md':1847 'references/reactiveomit.md':1853 'references/reactivepick.md':1863 'references/refautoreset.md':1873 'references/refdebounced.md':1889 'references/refdefault.md':1898 'references/refmanualreset.md':1907 'references/refthrottled.md':1917 'references/refwithcontrol.md':1926 'references/set.md':2175 'references/syncref.md':1938 'references/syncrefs.md':1946 'references/templateref.md':1556 'references/toobserver.md':2888 'references/toreactive.md':1958 'references/toref.md':1965 'references/torefs.md':1975 'references/tryonbeforemount.md':1566 'references/tryonbeforeunmount.md':1571 'references/tryonmounted.md':1576 'references/tryonscopedispose.md':1581 'references/tryonunmounted.md':1586 'references/unrefelement.md':1591 'references/until.md':1673 'references/useabs.md':2666 'references/useactiveelement.md':424 'references/useanimate.md':1453 'references/usearraydifference.md':1994 'references/usearrayevery.md':2004 'references/usearrayfilter.md':2009 'references/usearrayfind.md':2014 'references/usearrayfindindex.md':2019 'references/usearrayfindlast.md':2024 'references/usearrayincludes.md':2029 'references/usearrayjoin.md':2034 'references/usearraymap.md':2039 'references/usearrayreduce.md':2044 'references/usearraysome.md':2049 'references/usearrayunique.md':2054 'references/useasyncqueue.md':2183 'references/useasyncstate.md':313 'references/useasyncvalidator.md':2493 'references/useauth.md':2435 'references/useaverage.md':2671 'references/useaxios.md':2504 'references/usebase64.md':2201 'references/usebattery.md':1088 'references/usebluetooth.md':578 'references/usebreakpoints.md':588 'references/usebroadcastchannel.md':594 'references/usebrowserlocation.md':603 'references/usecached.md':2207 'references/useceil.md':2681 'references/usechangecase.md':2513 'references/useclamp.md':2686 'references/useclipboard.md':609 'references/useclipboarditems.md':618 'references/usecloned.md':2217 'references/usecolormode.md':627 'references/useconfirmdialog.md':2225 'references/usecookies.md':2525 'references/usecountdown.md':2070 'references/usecounter.md':2238 'references/usecsssupports.md':640 'references/usecssvar.md':651 'references/usecurrentelement.md':1606 'references/usecyclelist.md':2246 'references/usedark.md':657 'references/usedateformat.md':2078 'references/usedebouncedrefhistory.md':319 'references/usedebouncefn.md':2255 'references/usedevicemotion.md':1098 'references/usedeviceorientation.md':1106 'references/usedevicepixelratio.md':1114 'references/usedeviceslist.md':1123 'references/usedisplaymedia.md':1135 'references/usedocumentvisibility.md':429 'references/usedraggable.md':438 'references/usedrauu.md':2536 'references/usedropzone.md':444 'references/useelementbounding.md':455 'references/useelementbypoint.md':1144 'references/useelementhover.md':1151 'references/useelementsize.md':468 'references/useelementvisibility.md':477 'references/useeventbus.md':2263 'references/useeventlistener.md':667 'references/useeventsource.md':1400 'references/useextractedobservable.md':2904 'references/useeyedropper.md':674 'references/usefavicon.md':683 'references/usefetch.md':1425 'references/usefiledialog.md':688 'references/usefilesystemaccess.md':696 'references/usefirestore.md':2445 'references/usefloor.md':2697 'references/usefocus.md':1159 'references/usefocustrap.md':2546 'references/usefocuswithin.md':1175 'references/usefps.md':1192 'references/usefullscreen.md':711 'references/usefuse.md':2558 'references/usegamepad.md':720 'references/usegeolocation.md':1200 'references/useidbkeyval.md':2573 'references/useidle.md':1209 'references/useimage.md':733 'references/useinfinitescroll.md':1219 'references/useintersectionobserver.md':489 'references/useinterval.md':1463 'references/useintervalfn.md':1473 'references/useipcrenderer.md':2367 'references/useipcrendererinvoke.md':2383 'references/useipcrendereron.md':2393 'references/usejwt.md':2584 'references/usekeymodifier.md':1227 'references/uselastchanged.md':328 'references/uselocalstorage.md':338 'references/usemagickeys.md':1236 'references/usemanualrefhistory.md':346 'references/usemath.md':2702 'references/usemax.md':2708 'references/usemediacontrols.md':743 'references/usemediaquery.md':755 'references/usememoize.md':2270 'references/usememory.md':764 'references/usemin.md':2713 'references/usemounted.md':1619 'references/usemouse.md':1243 'references/usemouseinelement.md':500 'references/usemousepressed.md':1249 'references/usemutationobserver.md':510 'references/usenavigatorlanguage.md':1256 'references/usenetwork.md':1264 'references/usenow.md':1481 'references/usenprogress.md':2595 'references/useobjecturl.md':770 'references/useobservable.md':2921 'references/useoffsetpagination.md':2284 'references/useonline.md':1273 'references/usepageleave.md':1279 'references/useparallax.md':1292 'references/useparentelement.md':522 'references/useperformanceobserver.md':778 'references/usepermission.md':784 'references/usepointer.md':1299 'references/usepointerlock.md':1308 'references/usepointerswipe.md':1317 'references/useprecision.md':2718 'references/usepreferredcolorscheme.md':793 'references/usepreferredcontrast.md':806 'references/usepreferreddark.md':818 'references/usepreferredlanguages.md':825 'references/usepreferredreducedmotion.md':834 'references/usepreferredreducedtransparency.md':847 'references/useprevious.md':2290 'references/useprojection.md':2728 'references/useqrcode.md':2605 'references/useraffn.md':1488 'references/userefhistory.md':362 'references/useresizeobserver.md':532 'references/useround.md':2739 'references/useroutehash.md':2837 'references/userouteparams.md':2845 'references/useroutequery.md':2853 'references/usertdb.md':2454 'references/usescreenorientation.md':860 'references/usescreensafearea.md':870 'references/usescripttag.md':879 'references/usescroll.md':1329 'references/usescrolllock.md':1337 'references/usesessionstorage.md':372 'references/useshare.md':886 'references/usesortable.md':2614 'references/usesorted.md':2060 'references/usespeechrecognition.md':1345 'references/usespeechsynthesis.md':1353 'references/usessrwidth.md':896 'references/usestepper.md':2300 'references/usestorage.md':380 'references/usestorageasync.md':403 'references/usestyletag.md':926 'references/usesubject.md':2931 'references/usesubscription.md':2950 'references/usesum.md':2744 'references/usesupported.md':2313 'references/useswipe.md':1361 'references/usetemplaterefslist.md':1626 'references/usetextareaautosize.md':935 'references/usetextdirection.md':949 'references/usetextselection.md':1373 'references/usethrottledrefhistory.md':411 'references/usethrottlefn.md':2319 'references/usetimeago.md':2093 'references/usetimeagointl.md':2099 'references/usetimeout.md':1496 'references/usetimeoutfn.md':1508 'references/usetimeoutpoll.md':2327 'references/usetimestamp.md':1516 'references/usetitle.md':962 'references/usetoggle.md':2335 'references/usetonumber.md':2344 'references/usetostring.md':2354 'references/usetransition.md':1522 'references/usetrunc.md':2754 'references/useurlsearchparams.md':968 'references/useusermedia.md':1387 'references/usevibrate.md':976 'references/usevirtuallist.md':1642 'references/usevmodel.md':1650 'references/usevmodels.md':1659 'references/usewakelock.md':985 'references/usewebnotification.md':996 'references/usewebsocket.md':1440 'references/usewebworker.md':1004 'references/usewebworkerfn.md':1016 'references/usewindowfocus.md':550 'references/usewindowscroll.md':562 'references/usewindowsize.md':568 'references/usezoomfactor.md':2411 'references/usezoomlevel.md':2421 'references/watcharray.md':1683 'references/watchatmost.md':1694 'references/watchdebounced.md':1704 'references/watchdeep.md':1709 'references/watchextractedobservable.md':2970 'references/watchignorable.md':1719 'references/watchimmediate.md':1724 'references/watchonce.md':1734 'references/watchpausable.md':1744 'references/watchthrottled.md':1749 'references/watchtriggerable.md':1754 'references/watchwithfilter.md':1763 'references/whenever.md':1771 'refmanualreset':1906 'refthrottl':1916 'refwithcontrol':1925 'registr':1011 'relat':504 'reli':913 'remov':1051,1691 'render':909 'report':533 'repres':773 'request':162,1437 'requestanimationfram':1493 'requir':36,88,102,143 'reset':1879,1913 'result':2194,2272,2390 'retriev':1592 'return':1810 'reus':1542 'reusabl':247 'route.hash':2842 'route.params':2850 'route.query':2858 'router':2832 'rule':115,181 'run':1017 'rxjs':2860,2868,2897,2907,2924,2934,2953,2976 'rxjs.dev':2872,2877,2900,2910,2927,2937,2956,2979 'rxjs.dev/api/index/function/from)':2871 'rxjs.dev/api/index/function/fromevent)':2876 'rxjs.dev/guide/observable)':2909,2926,2978 'rxjs.dev/guide/observer)':2899 'rxjs.dev/guide/subject)':2936 'rxjs.dev/guide/subscription)':2955 'safe':874,1567,1572,1577,1582,1587 'safe-area-inset':873 'schema.org':2999,3008 'schemaorg':2989 'scheme':798 'scope':244,1547 'screen':862,987 'script':882 'scroll':565,1221,1331,1339 'search':2562 'second':1197,2075 'section':197 'select':1378,2823 'sensor':1025 'sent':1409 'sequenti':2188 'server':1408,1422 'server-sent-ev':1407 'sessionstorag':374,397 'set':899,1165,2174,2720 'setinterv':1476 'settimeout':1511 'shallowref':1814 'share':889 'short':210 'shorthand':320,412,1557,1627,1651,1660,1710,1725,1735,1772,2143,2176,2838,2846,2854 'show':1283 'simpl':1005 'size':470,571 'skill':19,69 'skill-vueuse-functions' 'solut':53 'someth':2332 'sort':2062 'sortabl':2617 'sound':3011,3020 'sourc':1954 'source-vueuse' 'speechrecognit':1347 'speechsynthesi':1355 'spring':2829 'ssr':641,910,2314 'start':1079 'state':233,240,256,316,1156,1168,1230,1240,1253,1276,1281,1302,1334,1621,2821 'status':1091,1267 'step':2308 'storag':405 'stream':1141,1393 'string':2086,2348,2360 'style':929,2775 'subject':2935 'subscript':2954 'sugar':2889 'suitabl':40 'sum':2747 'support':408,2105,2230 'swipe':1319,1363 'switcher':2338 'sync':1951,2766,2781 'synchron':1943 'syncref':1937,1945 'tabl':126 'tag':883,2485 'target':494,1948,2772,2787,2811 'task':2187,2193,2198 'templat':1543,1551,1562,1632 'templateref':1555 'text':959,1377 'textarea':942 'theme':821 'throttl':416,1750,1918,2320 'time':1505,1677,1700,1886,2065,2095,2101,2172 'timeout':2329 'timer':2073 'timestamp':331,1519 'titl':965 'token':2088 'toobserv':2887 'topic-agent-skills' 'topic-agents' 'topic-skills' 'topic-vue' 'topic-vueuse' 'toreact':1957 'toref':1964,1974,1977 'touchev':1367 'track':348,363,431,478,552,1116,1163,1179,1210,1375 'transform':2204,2790 'transit':1523 'transpar':852 'trap':2552 'tree':519 'trigger':1701,1759 'true':1501,1716,1731,1741 'truli':154 'truthi':1778 'tryonbeforemount':1565 'tryonbeforeunmount':1570 'tryonmount':1575 'tryonscopedispos':1580 'tryonunmount':1585 'two':1940,2000,2692 'two-way':1939 'type':231,1080,2155 'ui':1023 'under':1594 'uniqu':2056 'univers':2529 'universal-cooki':2528 'unmount':2408 'unrefel':1590 'unsubscrib':2961 'updat':937,2482,3007 'url':772 'urlsearchparam':970 'usabl':270 'usag':46,228 'use':130,135,158,217,388,668,897,907,2328,2394,2563,2905,2922,2951 'useab':2665 'useactiveel':423 'useanim':1452 'usearraydiffer':1993 'usearrayeveri':2003 'usearrayfilt':2008 'usearrayfind':2013 'usearrayfindindex':2018 'usearrayfindlast':2023 'usearrayinclud':2028 'usearrayjoin':2033 'usearraymap':2038 'usearrayreduc':2043 'usearraysom':2048 'usearrayuniqu':2053 'useasyncqueu':2182 'useasyncst':312 'useasyncvalid':2492 'useauth':2434 'useaverag':2670 'useaxio':2503 'usebase64':2200 'usebatteri':1087 'usebluetooth':577 'usebreakpoint':587,922 'usebroadcastchannel':593 'usebrowserloc':602 'usecach':2206 'useceil':2680 'usechangecas':2512 'useclamp':2685 'useclipboard':608 'useclipboarditem':617 'useclon':2216 'usecolormod':626 'useconfirmdialog':2224 'usecooki':2524 'usecount':2237 'usecountdown':2069 'usecsssupport':639 'usecssvar':650 'usecurrentel':1605 'usecyclelist':2245 'usedark':656 'usedateformat':2077 'usedebouncedrefhistori':318 'usedebouncefn':2254 'usedevicemot':1097 'usedeviceorient':1105 'usedevicepixelratio':1113 'usedeviceslist':1122 'usedisplaymedia':1134 'usedocumentvis':428 'usedragg':437 'usedrauu':2535 'usedropzon':443 'useelementbound':454 'useelementbypoint':1143 'useelementhov':1150 'useelements':467 'useelementstyl':2762 'useelementtransform':2777 'useelementvis':476 'useeventbus':2262 'useeventlisten':666 'useeventsourc':1399 'useextractedobserv':2903 'useeyedropp':673 'usefavicon':682 'usefetch':1424 'usefiledialog':687 'usefilesystemaccess':695 'usefirestor':2444 'usefloor':2696 'usefocus':1158 'usefocustrap':2545 'usefocuswithin':1174 'usefp':1191 'usefullscreen':710 'usefus':2557 'usegamepad':719 'usegeoloc':1199 'usehead':2478 'useidbkeyv':2572 'useidl':1208 'useimag':732 'useinfinitescrol':1218 'useintersectionobserv':488 'useinterv':1462 'useintervalfn':1472 'useipcrender':2366 'useipcrendererinvok':2382 'useipcrendereron':2392 'usejwt':2583 'usekeymodifi':1226 'uselastchang':327 'uselocalstorag':337 'usemagickey':1235 'usemanualrefhistori':345 'usemath':2701 'usemax':2707 'usemediacontrol':742 'usemediaqueri':754,919 'usememo':2269 'usememori':763 'usemin':2712 'usemot':2792 'usemotionproperti':2802 'usemotionvari':2814 'usemount':1618 'usemous':1242 'usemouseinel':499 'usemousepress':1248 'usemutationobserv':509 'usenavigatorlanguag':1255 'usenetwork':1263 'usenow':1480 'usenprogress':2594 'useobjecturl':769 'useobserv':2920 'useoffsetpagin':2283 'useonlin':1272 'usepageleav':1278 'useparallax':1291 'useparentel':521 'useperformanceobserv':777 'usepermiss':783 'usepoint':1298 'usepointerlock':1307 'usepointerswip':1316 'useprecis':2717 'usepreferredcolorschem':792 'usepreferredcontrast':805 'usepreferreddark':817 'usepreferredlanguag':824 'usepreferredreducedmot':833 'usepreferredreducedtranspar':846 'useprevi':2289 'useproject':2727 'useqrcod':2604 'user':72,139,165,167,357,1078,1213,1376 'useraffn':1487 'userefhistori':322,361,414 'useresizeobserv':531 'useround':2738 'useroutehash':2836 'userouteparam':2844 'useroutequeri':2852 'usertdb':2453 'useschemaorg':3003 'usescreenorient':859 'usescreensafearea':869 'usescripttag':878 'usescrol':1328 'usescrolllock':1336 'usesessionstorag':371 'useshar':885 'usesort':2059,2613 'usesound':3015 'usespeechrecognit':1344 'usespeechsynthesi':1352 'usespr':2825 'usessrwidth':895 'usestepp':2299 'usestorag':379 'usestorageasync':402 'usestyletag':925 'usesubject':2930 'usesubscript':2949 'usesum':2743 'usesupport':2312 'useswip':1360 'usetemplaterefslist':1625 'usetextareaautos':934 'usetextdirect':948 'usetextselect':1372 'usethrottledrefhistori':410 'usethrottlefn':2318 'usetimeago':2092 'usetimeagointl':2098 'usetimeout':1495 'usetimeoutfn':1507 'usetimeoutpol':2326 'usetimestamp':1515 'usetitl':961 'usetoggl':2334 'usetonumb':2343 'usetostr':2353 'usetransit':1521 'usetrunc':2753 'useurlsearchparam':967 'useusermedia':1386 'usevibr':975 'usevirtuallist':1641 'usevmodel':1649,1658 'usewakelock':984 'usewebnotif':995 'usewebsocket':1439 'usewebwork':1003 'usewebworkerfn':1015 'usewindowfocus':549 'usewindows':567 'usewindowscrol':561 'usezoomfactor':2410 'usezoomlevel':2420 'util':1161,1177,2107,2113,2121,2242,2340 'v':1638,1654,1664 'v-for':1637 'v-model':1653,1663 'valid':2498 'valu':288,306,1498,1525,1713,1728,1738,1775,1883,1895,1901,1923,2137,2294,2690,2694,2944,2973 'value/ref/getter':1967 'variabl':654 'variant':2820 'version':2629 'vibrat':978 'video':751 'viewport':486,590,902,916 'virtual':1644 'visibl':480,497 'vue':249,273,1599,2379 'vue-schema-org.netlify.app':2995,3005 'vue-schema-org.netlify.app/api/core/create-schema-org.html)':2994 'vue-schema-org.netlify.app/api/core/use-schema-org.html)':3004 'vue.js':13,31,76 'vuejs.org':1979 'vuejs.org/api/reactivity-utilities.html#torefs)':1978 'vueus':2,5,16,28,41,83,90,107,191 'vueuse-funct':1 'vueuse.org':193 'vueuse.org/)':192 'wake':988 'watch':511,1668,1678,1684,1695,1706,1712,1721,1727,1737,1746,1751,1755,1764,1774,2971 'watcharray':1682 'watchatmost':1693 'watchdebounc':1703 'watchdeep':1708 'watchextractedobserv':2969 'watchignor':1718 'watchimmedi':1723 'watchonc':1733 'watchpaus':1743 'watchthrottl':1748 'watchtrigger':1753 'watchwithfilt':1762 'way':1941,2947 'web':580,888,1006,1455 'webfram':2413,2423 'websocket':1442 'whenev':70,1770 'whether':81,1211,1284 'width':903,917 'window':553,564,570 'window.devicepixelratio':1117 'window.getselection':1381 'window.onblur':558 'window.onfocus':556 'within':484 'without':1020,1795,2958 'wizard':2309 'work':74 'worker':1007 'worri':2959 'wrapper':1474,1509,2494,2505,2515,2526,2548,2574,2585,2597,2606,2615,2866 'write':701 'www.electronjs.org':2371,2388,2397,2404,2415,2425 'www.electronjs.org/docs/api/ipc-renderer#ipcrendererinvokechannel-args)':2387 'www.electronjs.org/docs/api/ipc-renderer#ipcrendereronchannel-listener)':2396 'www.electronjs.org/docs/api/ipc-renderer#ipcrendererremovelistenerchannel-listener)':2403 'www.electronjs.org/docs/api/ipc-renderer)':2370 'www.electronjs.org/docs/api/web-frame#webframe)':2414,2424 'www.npmjs.com':2532,2580 'www.npmjs.com/package/idb-keyval)':2579 'www.npmjs.com/package/universal-cookie)':2531 'x':2179 'zone':447 'zoom':2417,2427","prices":[{"id":"24247667-0ab9-4a27-a88e-d191b8ca4ebe","listingId":"ccd8259a-817e-4dbb-b449-0f97f22b00d3","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"vueuse","category":"skills","install_from":"skills.sh"},"createdAt":"2026-04-18T22:02:36.486Z"}],"sources":[{"listingId":"ccd8259a-817e-4dbb-b449-0f97f22b00d3","source":"github","sourceId":"vueuse/skills/vueuse-functions","sourceUrl":"https://github.com/vueuse/skills/tree/main/skills/vueuse-functions","isPrimary":false,"firstSeenAt":"2026-04-18T22:02:36.486Z","lastSeenAt":"2026-05-18T18:54:28.933Z"},{"listingId":"ccd8259a-817e-4dbb-b449-0f97f22b00d3","source":"skills_sh","sourceId":"vueuse/skills/vueuse-functions","sourceUrl":"https://skills.sh/vueuse/skills/vueuse-functions","isPrimary":true,"firstSeenAt":"2026-05-07T20:40:43.821Z","lastSeenAt":"2026-05-07T22:40:31.114Z"}],"details":{"listingId":"ccd8259a-817e-4dbb-b449-0f97f22b00d3","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"vueuse","slug":"vueuse-functions","github":{"repo":"vueuse/skills","stars":360,"topics":["agent-skills","agents","ai","skills","vue","vueuse"],"license":"mit","html_url":"https://github.com/vueuse/skills","pushed_at":"2026-05-02T07:36:07Z","description":"Agent Skills for VueUse","skill_md_sha":"a33b03a69587ec7b0b85f2a38ef398a80d761a46","skill_md_path":"skills/vueuse-functions/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/vueuse/skills/tree/main/skills/vueuse-functions"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"vueuse-functions","license":"MIT","description":"Apply VueUse composables where appropriate to build concise, maintainable Vue.js / Nuxt features.","compatibility":"Requires Vue 3 (or above) or Nuxt 3 (or above) project"},"skills_sh_url":"https://skills.sh/vueuse/skills/vueuse-functions"},"updatedAt":"2026-05-18T18:54:28.933Z"}}