OSS探訪GitHubでログイン

Vue 3のComposition APIでbrowser・state・event処理をcomposableとして再利用する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
22,387
主要言語
TypeScript
ライセンス
MIT
リポジトリ最終更新
2026/10/05
ページ内ナビ

概要

VueUse 15.0.0は、Vue 3 Composition API向けのutility collectionです。browser API、storage、event、network、timing、state、sensorなどをcomposableとして提供し、componentごとに同じreactive glue codeを繰り返す量を減らせます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

browser APIやreactive stateをcomposableとして組み込む

VueUseは多数のComposition Utilitiesを提供し、mouse、storage、event listener、network、visibility、timingなどの処理をVueのreactive lifecycleへ接続できます。

出典:[1][2]

core packageを必要なfunction単位でimportする

@vueuse/coreはES module exportを提供し、application側では必要なcomposableだけをimportできます。v15ではtree-shaking annotationの修正も入っています。

出典:[2][3]

v15でWebMCPやLiveAnnouncerなど新しいcomposableを追加する

v15.0.0ではuseWebMCP、useLiveAnnouncer、useTemporalNowが追加され、browser capabilityやaccessibility、Temporal APIをVue composition codeへ取り込めます。

出典:[3]

向いている用途

Vue applicationで共通のreactive helperを自作し続けたくない場合に向く

複数componentで同種のbrowser/event/state logicを使うprojectで、tested utilityへ寄せてapplication固有のUI logicへ集中したいteamに適します。

出典:[1]

導入前の確認

v15はVue 3.5+・Node 22+へ引き上げ、複数のbreaking changeを含む

@vueuse/core 15.0.0はVue ^3.5.0とNode >=22を要求します。またtemplateRef削除、timer optionのscheduler移行、useThrottleFnのdefault変更などがあるため、major upgradeでは利用箇所の確認が必要です。

出典:[2][3]

参考にした公式資料

  1. [1]VueUse v15.0.0 README(2026-10-05)
  2. [2]@vueuse/core 15.0.0 package metadata(2026-10-05)
  3. [3]VueUse v15.0.0 release(2026-10-05)
  4. [4]VueUse MIT license(2026-10-05)
編集部からの補足

VueUse 15.0.0はVue ^3.5.0とNode >=22を要求します。v15ではtemplateRef削除やtimer option変更などbreaking changeがあるため、v14以前からの更新はrelease noteを確認してください。

3ステップで試す

  1. 1

    VueUse 15.0.0とVue 3.5.43を固定して導入する

    一時npm projectへreview対象のVueUseと互換Vueを固定して導入します。

    demo=$(mktemp -d "${TMPDIR:-/tmp}/vueuse.XXXXXX") && cd "$demo" && npm init -y >/dev/null && npm install --save-exact @vueuse/core@15.0.0 vue@3.5.43
  2. 2

    package versionを確認する

    VueUse coreとVueが想定versionで解決されていることを確認します。

    test "$(node -e "const fs=require('fs'); const v=p=>JSON.parse(fs.readFileSync(p)).version; console.log(v('node_modules/@vueuse/core/package.json')+'/'+v('node_modules/vue/package.json'))")" = '15.0.0/3.5.43'
  3. 3

    代表的なcomposable exportを確認する

    browserを起動せず、代表的なComposition Utilityがpackageからexportされることを確認します。

    test "$(node --input-type=module -e "import * as V from '@vueuse/core'; console.log(['useMouse','useLocalStorage','useEventListener'].every(k=>k in V))")" = 'true'
公式READMEで確認

成長

成長の推移 · 直近30日

22,387 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
10
Open PR
164

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

カテゴリ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • vue
  • utility-library
  • composable
  • vue3
  • vueuse
Stars
22,387
Forks
2,947
Watchers
127
Open Issues
215
Contributors
453
所有者種別
Organization
主要言語
TypeScript
ライセンス
MIT
リポジトリ最終更新
2026/10/05

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?