VueUse
A tree-shakeable collection of essential Vue 3 composition utilities for state, sensors, and browser APIs.
Repository Health
Technical Analysis
VueUse is an open-source collection of over 200 composable utility functions built on the Vue 3 Composition API. It wraps everyday browser and application concerns — reactive state persistence, element sizing, mouse and keyboard tracking, network status, clipboard access, and dozens more — into small, typed, tree-shakeable functions that snap directly into a component’s setup.
Written entirely in TypeScript and shipped SSR-friendly, VueUse lets teams reach for a battle-tested composable instead of hand-rolling reactive logic and effect cleanup for each feature. Optional add-ons extend the core into router, RxJS, Firebase, Electron, and Nuxt integrations.
What You Get
- 200+ tree-shakeable composables covering state, elements, sensors, network, browser, and animation concerns
- First-class TypeScript types with full TS Docs on every function
- SSR-friendly implementations that degrade safely on the server
- Optional add-ons for Vue Router, RxJS, Firebase, Electron, and a dedicated Nuxt module
- Interactive documentation and live demos at vueuse.org, plus CDN builds for no-bundler usage
Common Use Cases
- Persisting reactive state to localStorage or sessionStorage with useStorage
- Tracking pointer, scroll, resize, and intersection state without manual event listeners
- Reading device and browser capabilities such as battery, clipboard, geolocation, and dark-mode preference
- Debouncing and throttling reactive values and callbacks
- Building responsive UI logic with breakpoint and element-size composables
Under The Hood
Architecture — VueUse is a pnpm/turbo monorepo whose @vueuse/core package is organized one directory per composable (134+ folders such as useMouse, useStorage, useBreakpoints), each re-exported from a flat packages/core/index.ts. Core builds on two internal packages — @vueuse/shared (reactivity primitives and utility helpers) and @vueuse/metadata (generated function metadata) — while optional add-ons (router, rxjs, firebase, electron, nuxt, integrations) live as sibling packages so the core stays dependency-light. This one-function-per-module layout is what makes the library fully tree-shakeable.
Tech Stack — Written ~86% in TypeScript with Vue single-file components for demos, targeting Vue 3.5+ as a peer dependency. It is bundled with tsdown, linted via a flat eslint.config.js, styled in demos with UnoCSS, tested with Vitest, and orchestrated across the workspace by Turbo. CDN IIFE builds (index.iife.min.js) are published for no-bundler usage.
Code Quality — Test coverage is strong and colocated: roughly 121 *.test.ts files sit beside the 134 composables, so most public functions ship with unit tests. Consistent naming (use*/on*), per-function README files, and a _configurable.ts convention for shared options give the codebase a uniform, self-documenting shape.
API Design — The developer experience is a standout: every utility is a small composable that returns reactive refs, cleans up its own effects on scope disposal, and accepts a consistent configurable-options object. Full TypeScript inference, TS Docs on the public surface, and the interactive vueuse.org docs with live demos keep boilerplate near zero — a feature is typically one import and one call.
Used by 31 apps in this directory
1Panel
Devops · Hosting Control Panel · Monitoring
The only open-source VPS control panel with native AI agent runtime — deploy websites, Docker stacks, and local LLMs from one web interface.
BillionMail
Marketing
Self-hosted email server and marketing platform that gives you unlimited sending, full deliverability control, and AI-assisted campaigns without monthly fees.
Chatwoot
Customer Support
Open-source omnichannel customer support platform with AI-powered agents, live chat, and self-hosting — a full Intercom and Zendesk alternative.
Crater
Invoicing Finance
Open source invoicing and billing platform for freelancers and small businesses — create estimates, track expenses, accept Stripe payments, and run recurring invoices from your own server.
DataEase
Analytics · Data Engineering · AI Assistants
Open-source BI tool with drag-and-drop dashboards, 20+ data source connectors, and AI-powered natural language queries — a self-hosted alternative to Tableau.
Directus
CMS · Low Code Platforms
Connect any SQL database and get instant REST and GraphQL APIs, a visual management Studio, and a native MCP server for AI agents — free for most organizations.
Enso
Analytics · Data Engineering · Low Code Platforms
A visual and textual programming platform for data prep and analysis where the node graph and the underlying Enso code are always perfectly in sync, built by an Alteryx co-founder on a GraalVM engine.
Financial Freedom
Invoicing Finance
Own your financial data with a self-hosted, privacy-first budgeting app that replaces Mint and YNAB.
frp
Networking
A fast reverse proxy that exposes local servers behind NAT or firewalls to the public internet with multi-protocol support.