# vuejs/router

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/vuejs-router).**

4,638 stars · 1,285 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/vuejs/router
- Homepage: https://router.vuejs.org/
- awesome-repositories: https://awesome-repositories.com/repository/vuejs-router.md

## Topics

`vue` `vue-router`

## Description

Vue.js Client-Side Router is a routing library for Vue.js that synchronizes the browser URL with application state to enable single-page application navigation. It functions as a URL-to-component mapper, rendering specific components based on the current URL path and dynamic route patterns.

The project serves as a browser history manager that controls how internal routes map to the browser URL using various history strategies. It also provides a navigation guard framework to execute logic and access control during route transitions.

The library covers dynamic route management, programmatic URL manipulation, and the parsing of query parameters. It supports the definition of application routes through static and dynamic paths to control movement between different views.

## Tags

### Web Development

- [Client-Side Routers](https://awesome-repositories.com/f/web-development/client-side-routers.md) — Maps browser URL paths and dynamic patterns to specific Vue.js components for dynamic view rendering.
- [URL-to-Component Mappers](https://awesome-repositories.com/f/web-development/url-to-component-mappers.md) — Renders specific Vue components based on the current URL path to create a multi-page experience. ([source](https://router.vuejs.org/guide/))
- [Application Route Managers](https://awesome-repositories.com/f/web-development/application-route-managers.md) — Maps URL patterns to components using static and dynamic paths to define application routes. ([source](https://router.vuejs.org/))
- [Browser History Management](https://awesome-repositories.com/f/web-development/browser-history-management.md) — Implements a system to synchronize application state and internal routing with the browser's history API. ([source](https://router.vuejs.org/guide/))
- [Client-side Routing](https://awesome-repositories.com/f/web-development/client-side-routing.md) — Provides client-side routing to synchronize the browser URL with the application state in Vue.js.
- [Client-Side View Transitions](https://awesome-repositories.com/f/web-development/client-side-view-transitions.md) — Updates the displayed content and browser URL without reloading the entire page. ([source](https://router.vuejs.org/guide/))
- [Router Initializations](https://awesome-repositories.com/f/web-development/router-initializations.md) — Allows the creation and configuration of a router instance to manage application-wide navigation. ([source](https://router.vuejs.org/api/))
- [Dynamic Segment Extraction](https://awesome-repositories.com/f/web-development/routing-systems/routing/parameter-handling-utilities/path-parameter-converters/dynamic-segment-extraction.md) — Extracts dynamic segments from URL paths to pass them as parameters to the active route.
- [Vue.js Frameworks](https://awesome-repositories.com/f/web-development/vue-js-frameworks.md) — Functions as a core library specifically designed to extend Vue.js with professional routing and navigation capabilities.
- [Pattern-Based Route Mapping](https://awesome-repositories.com/f/web-development/web-infrastructure-deployment/web-infrastructure-servers/http-frameworks/http-route-handlers/pattern-based-route-mapping.md) — Implements pattern-based matching to map URL paths to specific Vue components.
- [Nested Routing](https://awesome-repositories.com/f/web-development/nested-routing.md) — Supports nested route definitions to enable recursive rendering and layout-driven view nesting.
- [Programmatic Navigation](https://awesome-repositories.com/f/web-development/programmatic-navigation.md) — Provides APIs to trigger URL changes and view transitions programmatically via code. ([source](https://router.vuejs.org/guide/))
- [Query String Parsing](https://awesome-repositories.com/f/web-development/query-string-parsing.md) — Transforms URL query strings into structured objects for easy manipulation within the app. ([source](https://router.vuejs.org/api/))
- [Router State Access](https://awesome-repositories.com/f/web-development/router-initializers/router-state-access.md) — Provides utilities for components to access the current route state and router instance. ([source](https://router.vuejs.org/api/))
- [Change Reactivity](https://awesome-repositories.com/f/web-development/routing-systems/routing/change-reactivity.md) — Synchronizes URL changes with a reactive state object to trigger automatic component updates.
- [Current URL Readers](https://awesome-repositories.com/f/web-development/url-routing-utilities/current-url-readers.md) — Enables components to retrieve the current URL path and associated route metadata. ([source](https://router.vuejs.org/guide/))

### Networking & Communication

- [Client-Side Route Mutation](https://awesome-repositories.com/f/networking-communication/traffic-routing/node-aware-routing/gateway-routing/dynamic-route-management/client-side-route-mutation.md) — Defines and manages static and dynamic URL patterns to control movement between views.

### Software Engineering & Architecture

- [Single-Page Navigators](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/frontend-rendering-loading/page-navigation-prefetching/paging-library-data-loading/sequential-page-navigators/single-page-navigators.md) — Provides the primary mechanism for changing views in a single-page application without triggering full browser reloads.

### User Interface & Experience

- [History API Navigators](https://awesome-repositories.com/f/user-interface-experience/navigation-routing/client-side-page-navigations/history-api-navigators.md) — Uses the browser's History API to enable seamless URL transitions without full page reloads.
- [Navigation Guards](https://awesome-repositories.com/f/user-interface-experience/navigation-routing/navigation-guards.md) — Provides navigation guards to intercept and validate route transitions before views are loaded.
- [URL Component Manipulators](https://awesome-repositories.com/f/user-interface-experience/url-synchronized-navigation/url-component-manipulators.md) — Provides capabilities for programmatically modifying URL path segments and query parameters.

### Security & Cryptography

- [Access Control Guards](https://awesome-repositories.com/f/security-cryptography/access-control-guards.md) — Uses navigation guards to restrict access to specific routes based on authentication or logic.
- [Route-Level Access Guards](https://awesome-repositories.com/f/security-cryptography/role-based-access-control/route-level-access-guards.md) — Executes logic through navigation guards to control or restrict route transitions. ([source](https://router.vuejs.org/api/))
