awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
reach avatar

reach/router

0
View on GitHub↗
6,834 stars·321 forks·JavaScript·MIT·14 viewsreach.tech/router↗

Router

Reach Router is a client-side routing library for React applications that maps URL patterns to components without full page reloads. It defines navigation rules and component rendering through declarative route configuration, using nested React component trees instead of separate configuration files.

The library supports parent-child route hierarchies so shared UI elements persist across page transitions, and provides a declarative Navigate component that triggers URL changes and view updates when rendered. It extracts dynamic segments from URL patterns and passes them as props to matched route components, while automatically managing browser focus on navigation for accessibility.

Reach Router detects browser URL changes by subscribing to the History API, enabling deep linking and browser history support. It creates clickable anchors that navigate between application-defined paths and passes data between pages by encoding parameters in the URL path or query string.

Features

  • Client-Side Routers - Maps URL patterns to components in a single-page application without full page reloads.
  • Client-side Routing - Navigates between views in a single-page application without full page reloads, updating the URL to match the current view.
  • Declarative URL Matchers - Compares the current URL against a declared pattern and renders the associated component when matched.
  • History Event Listeners - Subscribes to the popstate event and History API calls to detect browser URL changes.
  • Client-Side Link Components - Creates clickable anchors that navigate between application-defined paths without reloading the page.
  • URL Parameter Configuration - Encodes parameters in URL paths and query strings to pass data between pages.
  • Single-Page Navigators - Changes the visible page in a single-page application without a full browser reload, updating the URL.
  • Route Declarations - Defines URL-to-component mappings using nested React component trees instead of separate configuration files.
  • Navigation Components - Ships a declarative Navigate component that triggers URL changes and view updates when rendered.
  • Component Composition - Composes parent and child routes using React component trees for shared layouts across navigation.
  • URL Change Interceptors - Subscribes to the popstate event and History API calls to detect browser URL changes.
  • Nested Layouts - Composes parent and child route components so shared UI elements persist across page transitions.
  • Nested Routing - Composes parent and child routes using React component trees for shared layouts across navigation.
  • Programmatic Navigation - Changes the visible page in a single-page application by updating the browser URL without a full reload.
  • Declarative Navigate Components - Provides a declarative Navigate React component that triggers URL changes and view updates when rendered.
  • Client-Side Navigation Components - Maps URL patterns to React components for single-page application navigation without full page reloads.
  • Declarative Routing Libraries - Lets developers define navigation rules and component rendering through declarative route configuration.
  • Component Tree Matchers - Provides component-based route matching using nested React component trees instead of configuration files.
  • Route Parameter Extraction - Extracts dynamic segments from URL patterns and passes them as props to matched route components.
  • URL Data Parsing - Sends parameters and data between pages by encoding them in the URL path or query string.
  • URL-Synchronized Navigation - Synchronizes application views with browser URL changes, enabling deep linking and browser history support.
  • React Ecosystem - Next-generation routing solution for React applications.

Star history

Star history chart for reach/routerStar history chart for reach/router

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does reach/router do?

Reach Router is a client-side routing library for React applications that maps URL patterns to components without full page reloads. It defines navigation rules and component rendering through declarative route configuration, using nested React component trees instead of separate configuration files.

What are the main features of reach/router?

The main features of reach/router are: Client-Side Routers, Client-side Routing, Declarative URL Matchers, History Event Listeners, Client-Side Link Components, URL Parameter Configuration, Single-Page Navigators, Route Declarations.

Which projects share features with reach/router?

Projects with overlapping indexed features include: reacttraining/react-router — React Router is a client-side routing library for React that maps browser URLs to specific user interface components.… vuejs/router — Vue.js Client-Side Router is a routing library for Vue.js that synchronizes the browser URL with application state to… leptos-rs/leptos — Leptos is a full-stack Rust web framework designed for building reactive applications that share logic and types… reactjs/react-router — React Router is a client-side routing library and declarative routing engine for React applications. It functions as a… molefrog/wouter — Wouter is a minimalist client-side routing library for React and Preact. It uses a hook-based system to map URL paths… academind/react-complete-guide-course-resources — This repository is a collection of learning resources, instructional materials, and practical reference…

Projects sharing features with Router

These projects share indexed features with Router. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • reacttraining/react-routerReactTraining avatar

    ReactTraining/react-router

    56,473View on GitHub↗

    React Router is a client-side routing library for React that maps browser URLs to specific user interface components. It functions as a declarative navigation framework used to manage application state and navigation paths within single-page applications. The library handles the extraction of dynamic URL parameters to render content based on the current browser path. It synchronizes application state with the browser URL, enabling the use of the back and forward buttons and allowing for bookmarking. The framework covers declarative UI navigation and browser history management. It employs URL

    TypeScript
    View on GitHub↗56,473
  • vuejs/routervuejs avatar

    vuejs/router

    4,638View on GitHub↗

    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 U

    TypeScriptvuevue-router
    View on GitHub↗4,638
  • leptos-rs/leptosleptos-rs avatar

    leptos-rs/leptos

    20,993View on GitHub↗

    Leptos is a full-stack Rust web framework designed for building reactive applications that share logic and types between the server and the browser. It provides a comprehensive toolkit for developing web interfaces where specific DOM nodes update automatically in response to changes in underlying reactive signals, rather than re-rendering entire component trees. The framework distinguishes itself through a fine-grained reactivity model that tracks dependencies at the individual data point level. It utilizes compile-time template transformation to convert declarative HTML-like syntax into opti

    Rustdomfine-grainedisomorphic
    View on GitHub↗20,993
  • reactjs/react-routerreactjs avatar

    reactjs/react-router

    56,440View on GitHub↗

    React Router is a client-side routing library and declarative routing engine for React applications. It functions as a navigation tool that synchronizes the user interface with the browser address bar, allowing for view transitions without full page reloads. The library maps browser URLs to specific UI components, enabling declarative route management. This ensures the user interface stays in sync with the browser URL to support deep linking and bookmarking. The system covers client-side navigation and application state synchronization through the integration of the browser history interface

    TypeScript
    View on GitHub↗56,440
Compare all 30 related projects→