vue-router Build Status

This is vue-router 3.0 which works only with Vue 2.0.

Supporting Vue Router

Vue Router is part of the Vue Ecosystem and is an MIT-licensed open source project with its ongoing development made possible entirely by the support of Sponsors. If you would like to become a sponsor, please consider:

Gold Sponsors

VueJobs

Silver Sponsors

VueMastery Prefect

Bronze Sponsors

Stanislas Ormières Antony Konstantinidis Storyblok NuxtJS


Get started with the documentation, or play with the examples (see how to run them below).

Development Setup

# install deps
yarn

# build dist files
yarn build

# serve examples at localhost:8080
yarn dev

# lint & run all tests
yarn test

# serve docs at localhost:8080
yarn docs

Releasing

  • yarn run release
    • Ensure tests are passing yarn run test
    • Build dist files VERSION=<the_version> yarn run build
    • Build changelog yarn run changelog
    • Commit dist files git add dist CHANGELOG.md && git commit -m "[build $VERSION]"
    • Publish a new version `npm version $VERSION --message "[release] $VERSION"
    • Push tags git push origin refs/tags/v$VERSION && git push
    • Publish to npm npm publish

Questions

For questions and support please use the Discord chat server or the official forum. The issue list of this repo is exclusively for bug reports and feature requests.

Issues

Please make sure to read the Issue Reporting Checklist before opening an issue. Issues not conforming to the guidelines may be closed immediately.

Contribution

Please make sure to read the Contributing Guide before making a pull request.

Changelog

Details changes for each release are documented in the CHANGELOG.md file.

Stay In Touch

  • For latest releases and announcements, follow on Twitter: @vuejs

License

MIT

Copyright (c) 2013-present Evan You

Special Thanks

BrowserStack Logo

Special thanks to BrowserStack for letting the maintainers use their service to debug browser specific issues.

vuejs/vue-router

{
"props": {
"initialPayload": {
"allShortcutsEnabled": false,
"path": "/",
"repo": {
"id": 15116946,
"defaultBranch": "dev",
"name": "vue-router",
"ownerLogin": "vuejs",
"currentUserCanPush": false,
"isFork": false,
"isEmpty": false,
"createdAt": "2013-12-11T19:37:46.000Z",
"ownerAvatar": "https://avatars.githubusercontent.com/u/6128107?v=4",
"public": true,
"private": false,
"isOrgOwned": true
},
"currentUser": null,
"refInfo": {
"name": "dev",
"listCacheKey": "v0:1708511328.0",
"canEdit": false,
"refType": "branch",
"currentOid": "babc2d096d134e14321a763d9b6410ac57ee3650"
},
"tree": {
"items": [
{
"name": ".circleci",
"path": ".circleci",
"contentType": "directory"
},
{
"name": ".github",
"path": ".github",
"contentType": "directory"
},
{
"name": "assets",
"path": "assets",
"contentType": "directory"
},
{
"name": "build",
"path": "build",
"contentType": "directory"
},
{
"name": "dist",
"path": "dist",
"contentType": "directory"
},
{
"name": "docs-gitbook",
"path": "docs-gitbook",
"contentType": "directory"
},
{
"name": "docs",
"path": "docs",
"contentType": "directory"
},
{
"name": "examples",
"path": "examples",
"contentType": "directory"
},
{
"name": "flow",
"path": "flow",
"contentType": "directory"
},
{
"name": "scripts",
"path": "scripts",
"contentType": "directory"
},
{
"name": "src",
"path": "src",
"contentType": "directory"
},
{
"name": "test",
"path": "test",
"contentType": "directory"
},
{
"name": "types",
"path": "types",
"contentType": "directory"
},
{
"name": "vetur",
"path": "vetur",
"contentType": "directory"
},
{
"name": ".babelrc",
"path": ".babelrc",
"contentType": "file"
},
{
"name": ".eslintignore",
"path": ".eslintignore",
"contentType": "file"
},
{
"name": ".eslintrc",
"path": ".eslintrc",
"contentType": "file"
},
{
"name": ".flowconfig",
"path": ".flowconfig",
"contentType": "file"
},
{
"name": ".gitignore",
"path": ".gitignore",
"contentType": "file"
},
{
"name": ".prettierrc",
"path": ".prettierrc",
"contentType": "file"
},
{
"name": "CHANGELOG.md",
"path": "CHANGELOG.md",
"contentType": "file"
},
{
"name": "LICENSE",
"path": "LICENSE",
"contentType": "file"
},
{
"name": "README.md",
"path": "README.md",
"contentType": "file"
},
{
"name": "composables.d.ts",
"path": "composables.d.ts",
"contentType": "file"
},
{
"name": "composables.js",
"path": "composables.js",
"contentType": "file"
},
{
"name": "composables.mjs",
"path": "composables.mjs",
"contentType": "file"
},
{
"name": "netlify.toml",
"path": "netlify.toml",
"contentType": "file"
},
{
"name": "package.json",
"path": "package.json",
"contentType": "file"
},
{
"name": "yarn.lock",
"path": "yarn.lock",
"contentType": "file"
}
],
"templateDirectorySuggestionUrl": null,
"readme": null,
"totalCount": 29,
"showBranchInfobar": false
},
"fileTree": null,
"fileTreeProcessingTime": null,
"foldersToFetch": [],
"treeExpanded": false,
"symbolsExpanded": false,
"isOverview": true,
"overview": {
"banners": {
"shouldRecommendReadme": false,
"isPersonalRepo": false,
"showUseActionBanner": false,
"actionSlug": null,
"actionId": null,
"showProtectBranchBanner": false,
"recentlyTouchedDataChannel": null,
"publishBannersInfo": {
"dismissActionNoticePath": "/settings/dismiss-notice/publish_action_from_repo",
"releasePath": "/vuejs/vue-router/releases/new?marketplace=true",
"showPublishActionBanner": false
},
"interactionLimitBanner": null,
"showInvitationBanner": false,
"inviterName": null
},
"codeButton": {
"contactPath": "/contact",
"isEnterprise": false,
"local": {
"protocolInfo": {
"httpAvailable": true,
"sshAvailable": null,
"httpUrl": "https://github.com/vuejs/vue-router.git",
"showCloneWarning": null,
"sshUrl": null,
"sshCertificatesRequired": null,
"sshCertificatesAvailable": null,
"ghCliUrl": "gh repo clone vuejs/vue-router",
"defaultProtocol": "http",
"newSshKeyUrl": "/settings/ssh/new",
"setProtocolPath": "/users/set_protocol"
},
"platformInfo": {
"cloneUrl": "https://desktop.github.com",
"showVisualStudioCloneButton": false,
"visualStudioCloneUrl": "https://windows.github.com",
"showXcodeCloneButton": false,
"xcodeCloneUrl": "https://developer.apple.com",
"zipballUrl": "/vuejs/vue-router/archive/refs/heads/dev.zip"
}
},
"newCodespacePath": "/codespaces/new?hide_repo_select=true&repo=15116946"
},
"popovers": {
"rename": null,
"renamedParentRepo": null
},
"commitCount": "1,455",
"overviewFiles": [
{
"displayName": "README.md",
"repoName": "vue-router",
"refName": "dev",
"path": "README.md",
"preferredFileType": "readme",
"tabName": "README",
"richText": "<article class=\"markdown-body entry-content container-lg\" itemprop=\"text\"><h1 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-vue-router-\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#vue-router-\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>vue-router <a href=\"https://circleci.com/gh/vuejs/vue-router\" rel=\"nofollow\"><img src=\"https://camo.githubusercontent.com/4bbff4759c447a3e0a1088ca63284d93933ca8748c691cc070c64e684ecbaef1/68747470733a2f2f696d672e736869656c64732e696f2f636972636c6563692f70726f6a6563742f6769746875622f7675656a732f7675652d726f757465722f6465762e737667\" alt=\"Build Status\" data-canonical-src=\"https://img.shields.io/circleci/project/github/vuejs/vue-router/dev.svg\" style=\"max-width: 100%;\"></a></h1>\n<blockquote>\n<p dir=\"auto\">This is vue-router 3.0 which works only with Vue 2.0.</p>\n<ul dir=\"auto\">\n<li>For the 1.x router see the <a href=\"https://github.com/vuejs/vue-router/tree/1.0\">1.0 branch</a>.</li>\n<li>For Vue Router 4 (for Vue 3) see <a href=\"https://github.com/vuejs/router\">vuejs/router</a>.</li>\n</ul>\n</blockquote>\n<h2 align=\"center\" tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-supporting-vue-router\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#supporting-vue-router\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Supporting Vue Router</h2>\n<p dir=\"auto\">Vue Router is part of the Vue Ecosystem and is an MIT-licensed open source project with its ongoing development made possible entirely by the support of Sponsors. If you would like to become a sponsor, please consider:</p>\n<ul dir=\"auto\">\n<li><a href=\"https://github.com/sponsors/posva\">Become a Sponsor on GitHub</a></li>\n<li><a href=\"https://paypal.me/posva\" rel=\"nofollow\">One-time donation via PayPal</a></li>\n</ul>\n\n<h4 align=\"center\" tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-gold-sponsors\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#gold-sponsors\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Gold Sponsors</h4>\n<p align=\"center\" dir=\"auto\">\n <a href=\"https://vuejobs.com/?utm_source=vuerouter&amp;utm_campaign=sponsor\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/990171e0bef139d7b2b2f1f8c5c60e56325679a4dc982064f9bd4d222c704638/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656a6f62732e737667\" media=\"(prefers-color-scheme: dark)\" height=\"72px\" alt=\"VueJobs\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuejobs.svg\">\n <img src=\"https://camo.githubusercontent.com/990171e0bef139d7b2b2f1f8c5c60e56325679a4dc982064f9bd4d222c704638/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656a6f62732e737667\" height=\"72px\" alt=\"VueJobs\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuejobs.svg\">\n </picture></themed-picture>\n </a>\n</p>\n<h4 align=\"center\" tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-silver-sponsors\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#silver-sponsors\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Silver Sponsors</h4>\n<p align=\"center\" dir=\"auto\">\n <a href=\"https://www.vuemastery.com/\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/f2caa71a7cf1a6506b652d76c407ef759f1ef63a357041e2e38f191f8e7ffde2/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656d6173746572792d6461726b2e706e67\" media=\"(prefers-color-scheme: dark)\" height=\"42px\" alt=\"VueMastery\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuemastery-dark.png\">\n <img src=\"https://camo.githubusercontent.com/05e181e116f16128e641782616a179efb8c3c45f4f7a051abb8ef0a9a4858eec/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656d6173746572792d6c696768742e737667\" height=\"42px\" alt=\"VueMastery\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuemastery-light.svg\">\n </picture></themed-picture>\n </a>\n <a href=\"https://www.prefect.io/\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/b4a2a7f2f9a3f3d64f9ebda2e84d98ac18bf1ecd4cf6f61d0e1f70d64c351ab9/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f707265666563746c6f676f2d6461726b2e737667\" media=\"(prefers-color-scheme: dark)\" height=\"42px\" alt=\"Prefect\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/prefectlogo-dark.svg\">\n <img src=\"https://camo.githubusercontent.com/b935c443105ff7abca317f1abcf084e2a254fb9edfccdd567c6b3259801a0f14/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f707265666563746c6f676f2d6c696768742e737667\" height=\"42px\" alt=\"Prefect\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/prefectlogo-light.svg\">\n </picture></themed-picture>\n </a>\n</p>\n<h4 align=\"center\" tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-bronze-sponsors\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#bronze-sponsors\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Bronze Sponsors</h4>\n<p align=\"center\" dir=\"auto\">\n <a href=\"https://stormier.ninja\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&amp;v=4\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"Stanislas Ormières\">\n <img src=\"https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&amp;v=4\" height=\"26px\" alt=\"Stanislas Ormières\">\n </picture></themed-picture>\n </a>\n <a href=\"/vuejs/vue-router/blob/dev/www.vuejs.de\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&amp;v=4\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"Antony Konstantinidis\">\n <img src=\"https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&amp;v=4\" height=\"26px\" alt=\"Antony Konstantinidis\">\n </picture></themed-picture>\n </a>\n <a href=\"https://storyblok.com\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/013ee0849c18d0002223e5c4a396535228af093e407f31bd928404eebd63c339/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f73746f7279626c6f6b2e706e67\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"Storyblok\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/storyblok.png\">\n <img src=\"https://camo.githubusercontent.com/013ee0849c18d0002223e5c4a396535228af093e407f31bd928404eebd63c339/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f73746f7279626c6f6b2e706e67\" height=\"26px\" alt=\"Storyblok\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/storyblok.png\">\n </picture></themed-picture>\n </a>\n <a href=\"https://nuxtjs.org\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/0bc682e85e9a2494e75246e624b21cf2867c4d95bf2fcb83844f24db936cdf1c/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f6e7578742d6461726b2e737667\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"NuxtJS\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/nuxt-dark.svg\">\n <img src=\"https://camo.githubusercontent.com/b1e5e1fadba4aba2d059cdf0db45c425fca17578bd97f74bc61cce022479ad2e/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f6e7578742d6c696768742e737667\" height=\"26px\" alt=\"NuxtJS\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/nuxt-light.svg\">\n </picture></themed-picture>\n </a>\n</p>\n\n<hr>\n<p dir=\"auto\">Get started with the <a href=\"http://v3.router.vuejs.org\" rel=\"nofollow\">documentation</a>, or play with the <a href=\"https://github.com/vuejs/vue-router/tree/dev/examples\">examples</a> (see how to run them below).</p>\n<h3 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-development-setup\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#development-setup\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Development Setup</h3>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"# install deps\nyarn\n\n# build dist files\nyarn build\n\n# serve examples at localhost:8080\nyarn dev\n\n# lint &amp; run all tests\nyarn test\n\n# serve docs at localhost:8080\nyarn docs\"><pre><span class=\"pl-c\"><span class=\"pl-c\">#</span> install deps</span>\nyarn\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> build dist files</span>\nyarn build\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> serve examples at localhost:8080</span>\nyarn dev\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> lint &amp; run all tests</span>\nyarn <span class=\"pl-c1\">test</span>\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> serve docs at localhost:8080</span>\nyarn docs</pre></div>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-releasing\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#releasing\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Releasing</h2>\n<ul dir=\"auto\">\n<li><code>yarn run release</code>\n<ul dir=\"auto\">\n<li>Ensure tests are passing <code>yarn run test</code></li>\n<li>Build dist files <code>VERSION=&lt;the_version&gt; yarn run build</code></li>\n<li>Build changelog <code>yarn run changelog</code></li>\n<li>Commit dist files <code>git add dist CHANGELOG.md &amp;&amp; git commit -m \"[build $VERSION]\"</code></li>\n<li>Publish a new version `npm version $VERSION --message \"[release] $VERSION\"</li>\n<li>Push tags <code>git push origin refs/tags/v$VERSION &amp;&amp; git push</code></li>\n<li>Publish to npm <code>npm publish</code></li>\n</ul>\n</li>\n</ul>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-questions\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#questions\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Questions</h2>\n<p dir=\"auto\">For questions and support please use the <a href=\"https://chat.vuejs.org\" rel=\"nofollow\">Discord chat server</a> or <a href=\"http://forum.vuejs.org\" rel=\"nofollow\">the official forum</a>. The issue list of this repo is <strong>exclusively</strong> for bug reports and feature requests.</p>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-issues\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#issues\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Issues</h2>\n<p dir=\"auto\">Please make sure to read the <a href=\"https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#issue-reporting-guidelines\">Issue Reporting Checklist</a> before opening an issue. Issues not conforming to the guidelines may be closed immediately.</p>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-contribution\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#contribution\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Contribution</h2>\n<p dir=\"auto\">Please make sure to read the <a href=\"https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md\">Contributing Guide</a> before making a pull request.</p>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-changelog\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#changelog\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Changelog</h2>\n<p dir=\"auto\">Details changes for each release are documented in the <a href=\"https://github.com/vuejs/vue-router/blob/dev/CHANGELOG.md\"><code>CHANGELOG.md file</code></a>.</p>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-stay-in-touch\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#stay-in-touch\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Stay In Touch</h2>\n<ul dir=\"auto\">\n<li>For latest releases and announcements, follow on Twitter: <a href=\"https://twitter.com/vuejs\" rel=\"nofollow\">@vuejs</a></li>\n</ul>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-license\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#license\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>License</h2>\n<p dir=\"auto\"><a href=\"http://opensource.org/licenses/MIT\" rel=\"nofollow\">MIT</a></p>\n<p dir=\"auto\">Copyright (c) 2013-present Evan You</p>\n<h2 tabindex=\"-1\" dir=\"auto\"><a id=\"user-content-special-thanks\" class=\"anchor\" aria-hidden=\"true\" tabindex=\"-1\" href=\"#special-thanks\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a>Special Thanks</h2>\n<a href=\"https://www.browserstack.com\" rel=\"nofollow\">\n <img src=\"/vuejs/vue-router/raw/dev/assets/browserstack-logo-600x315.png\" height=\"80\" title=\"BrowserStack Logo\" alt=\"BrowserStack Logo\" style=\"max-width: 100%;\">\n</a>\n<p dir=\"auto\">Special thanks to <a href=\"https://www.browserstack.com\" rel=\"nofollow\">BrowserStack</a> for letting the maintainers use their service to debug browser specific issues.</p>\n</article>",
"loaded": true,
"timedOut": false,
"errorMessage": null,
"headerInfo": {
"toc": [
{
"level": 1,
"text": "vue-router ",
"anchor": "vue-router-",
"htmlText": "vue-router "
},
{
"level": 2,
"text": "Supporting Vue Router",
"anchor": "supporting-vue-router",
"htmlText": "Supporting Vue Router"
},
{
"level": 4,
"text": "Gold Sponsors",
"anchor": "gold-sponsors",
"htmlText": "Gold Sponsors"
},
{
"level": 4,
"text": "Silver Sponsors",
"anchor": "silver-sponsors",
"htmlText": "Silver Sponsors"
},
{
"level": 4,
"text": "Bronze Sponsors",
"anchor": "bronze-sponsors",
"htmlText": "Bronze Sponsors"
},
{
"level": 3,
"text": "Development Setup",
"anchor": "development-setup",
"htmlText": "Development Setup"
},
{
"level": 2,
"text": "Releasing",
"anchor": "releasing",
"htmlText": "Releasing"
},
{
"level": 2,
"text": "Questions",
"anchor": "questions",
"htmlText": "Questions"
},
{
"level": 2,
"text": "Issues",
"anchor": "issues",
"htmlText": "Issues"
},
{
"level": 2,
"text": "Contribution",
"anchor": "contribution",
"htmlText": "Contribution"
},
{
"level": 2,
"text": "Changelog",
"anchor": "changelog",
"htmlText": "Changelog"
},
{
"level": 2,
"text": "Stay In Touch",
"anchor": "stay-in-touch",
"htmlText": "Stay In Touch"
},
{
"level": 2,
"text": "License",
"anchor": "license",
"htmlText": "License"
},
{
"level": 2,
"text": "Special Thanks",
"anchor": "special-thanks",
"htmlText": "Special Thanks"
}
],
"siteNavLoginPath": "/login?return_to=https%3A%2F%2Fgithub.com%2Fvuejs%2Fvue-router"
}
},
{
"displayName": "LICENSE",
"repoName": "vue-router",
"refName": "dev",
"path": "LICENSE",
"preferredFileType": "license",
"tabName": "MIT",
"richText": null,
"loaded": false,
"timedOut": false,
"errorMessage": null,
"headerInfo": {
"toc": null,
"siteNavLoginPath": "/login?return_to=https%3A%2F%2Fgithub.com%2Fvuejs%2Fvue-router"
}
}
],
"overviewFilesProcessingTime": 18.921892999999997
}
},
"appPayload": {
"helpUrl": "https://docs.github.com",
"findFileWorkerPath": "/assets-cdn/worker/find-file-worker-32bb159cc57c.js",
"findInFileWorkerPath": "/assets-cdn/worker/find-in-file-worker-c6704d501c10.js",
"githubDevUrl": null,
"enabled_features": {
"code_nav_ui_events": false,
"copilot_conversational_ux": false,
"copilot_conversational_ux_embedding_update": false,
"copilot_popover_file_editor_header": false,
"copilot_smell_icebreaker_ux": true,
"copilot_workspace": false,
"codeview_firefox_inert": true
}
}
}
}
{
"accept-ranges": "bytes",
"cache-control": "max-age=0, private, must-revalidate",
"content-encoding": "gzip",
"content-security-policy": "default-src 'none'; base-uri 'self'; child-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com api.githubcopilot.com objects-origin.githubusercontent.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/",
"content-type": "text/html; charset=utf-8",
"date": "Mon, 26 Feb 2024 12:07:49 GMT",
"etag": "5ba70d851493b7c8cac8d49e1967f78c",
"referrer-policy": "no-referrer-when-downgrade",
"server": "GitHub.com",
"set-cookie": "logged_in=no; Path=/; Domain=github.com; Expires=Wed, 26 Feb 2025 12:07:49 GMT; HttpOnly; Secure; SameSite=Lax",
"strict-transport-security": "max-age=31536000; includeSubdomains; preload",
"transfer-encoding": "chunked",
"vary": "X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With",
"x-content-type-options": "nosniff",
"x-frame-options": "deny",
"x-github-request-id": "9C4E:1D7C:192DDC3:240F082:65DC7F15",
"x-xss-protection": "0"
}