Add-ons
The core package aims to be lightweight and dependence free. While the add-ons are wrapping popular packages into the consistent API style.
Head - @vueuse/head
Document head manager for Vue 3. SSR ready. Created and maintained by @egoist
Motion - @vueuse/motion
Vue Composables putting your components in motion.
- 🏎 Smooth animations based on Popmotion
- 🎮 Declarative API
- 🚀 Plug & play with 10+ presets
- 🚚 Supports Nuxt using nuxt-use-motion
- ✨ Written in TypeScript
- 🏋️♀️ Lightweight with <20kb bundle size
Created and maintained by @Tahul
Gesture - @vueuse/gesture
Vue Composables making your app interactive
- 🚀 Plug & play
- 🕹 Mouse & Touch support
- 🎮 Directives support (v-drag, v-pinch, v-move...)
- ✨ Written in TypeScript
- 🤹 Plays well with vueuse/motion or any other animation solution
Created and maintained by @Tahul
Sound - @vueuse/sound
Vue composables for playing sound effects.
- 👂 Lets your website communicate using 2 human senses instead of 1
- 🔥 Built with Vue Composition API
- 🚚 Supports Nuxt 3 using @vueuse/sound/nuxt
- ⚡️ <1kb bytes (gzip) in your bundle! ~10kb loaded async.
- ✨ Built with TypeScript
- 🗣 Uses a powerful, battle-tested audio utility: Howler.js
Created and maintained by @Tahul
SchemaOrg - @vueuse/schema-org
Schema.org for Vue. Supports typed and automated Google Rich Results
- 😊 No Schema knowledge required, get up and running in minutes with minimal configuration
- ✨ 20+ Typed Schemas for best practice (Google, Yoast) Rich Results
- 🧙 Automated Schema:
@id, URL / date resolving, route meta and more - 🤝 Integrations for VitePress, Nuxt, Vitesse and Vite with auto-imports
- 🍞 Choose your preferred API: Composables or Components
- 🌳 SSR, tree-shaking and Schema inheritance ready
Created and maintained by @harlan-zw
Router - @vueuse/router
Utilities for vue-router
useRouteHash— shorthand for a reactiveroute.hashuseRouteParams— shorthand for a reactiveroute.paramsuseRouteQuery— shorthand for a reactiveroute.query
Integrations - @vueuse/integrations
Integration wrappers for utility libraries
useAsyncValidator— wrapper forasync-validatoruseAxios— wrapper foraxiosuseChangeCase— reactive wrapper forchange-caseuseCookies— wrapper foruniversal-cookieuseDrauu— reactive instance for drauuuseFocusTrap— reactive wrapper forfocus-trapuseFuse— easily implement fuzzy search using a composable with Fuse.jsuseIDBKeyval— wrapper foridb-keyvaluseJwt— wrapper forjwt-decodeuseNProgress— reactive wrapper fornprogressuseQRCode— wrapper forqrcodeuseSortable— wrapper forsortable
RxJS - @vueuse/rxjs
Enables RxJS reactive functions in Vue
from— wrappers around RxJS'sfrom()andfromEvent()to allow them to acceptrefstoObserver— sugar function to convert arefinto an RxJS ObserveruseExtractedObservable— use an RxJSObservableas extracted from one or more composablesuseObservable— use an RxJSObservableuseSubject— bind an RxJSSubjectto arefand propagate value changes both waysuseSubscription— use an RxJSSubscriptionwithout worrying about unsubscribing from it or creating memory leakswatchExtractedObservable— watch the values of an RxJSObservableas extracted from one or more composables
Firebase - @vueuse/firebase
Enables realtime bindings for Firebase
useAuth— reactive Firebase Auth bindinguseFirestore— reactive Firestore bindinguseRTDB— reactive Firebase Realtime Database binding
Electron - @vueuse/electron
Electron renderer process modules for VueUse
useIpcRenderer— provides ipcRenderer and all of its APIsuseIpcRendererInvoke— reactive ipcRenderer.invoke API resultuseIpcRendererOn— use ipcRenderer.on with ease and ipcRenderer.removeListener automatically on unmounteduseZoomFactor— reactive WebFrame zoom factoruseZoomLevel— reactive WebFrame zoom level