30 open-source projects similar to remix-run/history, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best History alternative.
Choo is a minimalist frontend framework providing a tiny foundation for building web applications. It functions as an event-driven application core that decouples business logic from rendering and includes a client-side router to manage browser history and URL mapping without page reloads. The project distinguishes itself through an architecture that combines a server-side rendering engine for generating static HTML strings with a stateful UI component library. This allows for the creation of self-contained interface elements that maintain internal data and persist across global renders. The
Swup is a page transition library and AJAX page loader designed to create seamless, animated transitions between pages on server-rendered websites. It functions as a DOM content orchestrator and browser history manager, intercepting navigation to replace page content dynamically and simulate a single-page application experience. The project differentiates itself through a hook-based lifecycle system and a plugin architecture that allows for the injection of custom logic and animation effects. It supports advanced visual methods including DOM content morphing, parallel-DOM rendering for overla
page.js is a client-side JavaScript router for single-page applications that maps URL patterns to executable functions. It functions as a navigation engine and browser history manager, implementing a middleware-based path-mapping system similar to the Express web framework. The library distinguishes itself through an Express-style router model, utilizing a middleware callback chain and a shared context object to pass data between navigation handlers. It supports advanced window management, allowing for multiple router instances to handle navigation independently across different windows or em
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
Vue.js Client-Side Router is a routing library that maps browser URLs to Vue.js components to enable the creation of single-page applications. It functions as a navigation engine that manages browser history and URL state to allow page transitions without full browser reloads. The system utilizes a nested route manager to render hierarchical views that match complex URL structures. It includes navigation guard middleware to intercept, validate, or redirect route transitions before components are rendered. A client-side history handler synchronizes application state with the browser URL using
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
history.js is a cross-browser URL state manager and HTML5 History API polyfill. It functions as a single page application router that manages browser URL and history state consistently across HTML5 and HTML4 browsers, enabling navigation without triggering full page reloads. The project provides a JavaScript framework adapter that integrates history management with the event systems of jQuery, MooTools, and Prototype. It ensures compatibility through a fallback mechanism that switches to hash-based navigation and hashbang URLs when the native HTML5 History API is unavailable. The system cove
Turbolinks is a JavaScript library that accelerates HTML page transitions by replacing the page body via network requests instead of performing full browser refreshes. It functions as a client-side navigation manager that intercepts link clicks and controls the page visit lifecycle to simulate a single-page application experience. The library synchronizes the browser URL and history stack with partial page updates and utilizes a caching mechanism to store visited page states. This allow for instant previews and restoration of state when navigating backward or forward. It also includes a tool
jscamp is a full-stack web development and education project focused on mastering JavaScript, TypeScript, and AI integration. It provides a structured curriculum and interactive exercises covering language fundamentals, frontend engineering, and backend API development. The project distinguishes itself through the implementation of autonomous AI agents capable of complex task automation, such as modifying files, managing servers, and executing API calls. It includes advanced AI development tools for conversational querying, real-time code suggestions, and automated repository analysis to gene
Inertia is a server-driven frontend framework designed to create monolithic single page applications. It acts as a state synchronization protocol and client-side routing bridge, allowing developers to build interactive experiences using modern JavaScript component libraries while keeping routing and controllers on the server. This approach eliminates the need for a separate REST or GraphQL API layer by passing data from server controllers to frontend components as props via JSON payloads. The framework distinguishes itself by utilizing adapter-based integration to link various backend environ
Eros-FE is a TypeScript web frontend designed as a React-based single page application. It provides a component-driven user interface for interacting with backend services and managing application state through a type-safe client. The project utilizes a client-side route manager to swap visible components without full page refreshes and employs a CSS-in-JS styling framework to tie component logic directly to visual presentation. The application covers frontend interface design, client-side state management, and the integration of browser interfaces with backend APIs.
This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed language into optimized JavaScript for web browsers. It serves as a frontend architecture framework, providing a static type system and a package manager that enforces semantic versioning. The compiler uses a type-checking engine with automatic type inference to prevent runtime errors and guide code refactoring. It implements a structural pattern for managing application state and rendering user interfaces through a virtual DOM, utilizing immutable data and purity-based state transit
This repository is a gallery of reference projects used to demonstrate the development of interactive user interfaces and dynamic web pages using the React library. It provides a collection of practical application examples focused on component-based architecture and frontend development. The projects serve as demonstrations for coordinating global and local data using hooks, context, and reducers. They include samples for fetching remote data to populate dynamic lists and galleries, as well as implementations of multi-page navigation and dynamic views that do not require browser refreshes.
Sapper is a universal web application framework and server-side rendering framework for Svelte. It enables the development of applications that render views on the server for fast initial loads and hydrate them on the client for subsequent interactivity. The project features a file-based routing engine that maps URL paths to components based on the file system structure. It also functions as a static site generator, exporting production-ready HTML, CSS, and JavaScript files for hosting in environments without a live server. The framework covers full-stack development capabilities, including
smoothState.js is an AJAX navigation manager and jQuery page transition library designed to create seamless transitions between pages by loading remote content asynchronously. It functions as a browser history state manager that attaches custom serializable data to history entries and handles URL redirects without requiring full browser refreshes. The library includes a client-side page cache that stores previously visited pages in memory for instant reloading. It further reduces perceived load times through a content prefetching system that initiates network requests when a user hovers over
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 rou
Wouter is a minimalist client-side routing library for React and Preact. It uses a hook-based system to map URL paths to components, managing navigation and URL state without requiring a mandatory provider. The library is designed for cross-ecosystem compatibility between React and Preact and supports server-side rendering by accepting initial paths and search strings during markup generation. It includes a URL parameter manager for extracting dynamic path segments and query strings from the browser address bar. Capabilities include hierarchical nested routing, programmatic navigation manage
This project is a technical study resource and interview preparation guide focused on the React library. It provides a comprehensive frontend interview question bank and concept references designed to help developers master core library primitives and prepare for professional job interviews. The resource covers detailed explanations of React's technical architecture, including state management patterns, performance optimization strategies, and component design. It serves as a knowledge assessment tool for developers to test their understanding of modern frontend engineering through a structur
This project is a collection of reference implementations and prototypes focused on routing, performance optimization, background threading, and user interface components. It serves as a sample library demonstrating the use of modern web platform features and native browser APIs. The repository provides prototypes for high-performance graphics, including 3D effects and animations rendered via hardware acceleration and CSS transformations. It includes implementation examples for client-side routing to synchronize application state with browser URLs and pattern galleries for offloading computat
UI-Router is a routing framework for AngularJS applications that maps URLs to a hierarchical tree of states and nested views. It functions as a state-based navigation engine, managing view transitions and dependencies through defined states rather than simple linear URL paths. The system acts as a nested view router, enabling the simultaneous rendering of multiple content areas by mapping application states to named views. It also serves as a client-side route controller, providing mechanisms to intercept transitions for authentication checks and resolve data dependencies before rendering vie
Vue Manage System is a type-safe administrative dashboard framework built with Vue 3 and Element Plus. It serves as a management template for backend systems, integrating role-based access control to restrict pages and actions based on assigned user permissions. The project distinguishes itself through a comprehensive set of administrative tools, including a data visualization dashboard with interactive charts and a content management system featuring rich text editing and image cropping utilities. It utilizes TypeScript for static typing and Pinia for centralized state management. The syste
This repository is a collection of learning resources, instructional materials, and practical reference implementations for the React library. It provides code snapshots, application boilerplates, and a repository of examples designed to support a structured curriculum for building React applications. The project offers specific implementation guides and samples for managing application state, mapping routes with shared layouts, and creating validated form systems. It includes versioned code snapshots, completed exercise references, and presentation materials to help users validate their prog
This project is a structured architectural layer for Backbone.js that implements the model-view-controller pattern for building complex single-page applications. It serves as a view management library and application framework that organizes views and data into manageable components and regions. The framework provides a centralized event aggregator pattern to coordinate communication between decoupled application modules without direct dependencies. It also includes a configuration-based client-side routing engine that maps browser URLs to specific controller actions. The system covers front
Mithril.js is a JavaScript UI framework designed for building single page applications. It functions as a virtual DOM library and a toolkit for creating dynamic user interfaces that synchronize application state with the browser display. The project integrates a client side router for mapping URLs to specific views and a built-in XHR data fetcher for sending and receiving information from servers. These components allow for navigation and content updates without requiring full page reloads. The framework covers user interface state management and asynchronous data fetching, utilizing virtual
react-pxq is a React Redux boilerplate and state-driven UI framework designed for building single-page applications. It functions as a starter project template that combines a client-side routing system with global state management to synchronize data across a component hierarchy. The project implements a code-split web application architecture that uses lazy loading to reduce initial bundle sizes. It integrates a navigation system that maps URL paths to components without triggering full page reloads. The framework covers centralized state management through a global store and action-based
vue-element-admin is a Vue.js admin dashboard template and frontend project boilerplate designed for building administrative interfaces. It functions as a single page application that integrates the Element UI component framework to provide a structured starting point for web portals. The project provides scaffolding for enterprise web applications, specifically focusing on admin dashboard development. It includes built-in support for role-based access control to manage user permissions and restrict access to specific application views. The system covers broad capabilities in frontend build
This project is a boilerplate for building administrative web applications and software-as-a-service platforms. It provides a foundational structure for React-based development, focusing on the rapid assembly of functional interfaces and the management of complex application navigation. The template distinguishes itself through a collection of pre-built interface elements and layouts based on Material-UI. These components are designed to accelerate the development of data visualization tools, management dashboards, and common user-facing features such as file uploaders and payment forms. The
Moon is a minimal reactive UI library for building user interfaces with a component composition framework, client-side routing, server-side rendering, and signals-based reactivity. It provides a virtual DOM diffing engine that computes minimal real DOM mutations, enabling efficient view updates by comparing in-memory UI representations against previous versions. The library distinguishes itself through a signals-based reactivity system that tracks data dependencies through observable signals, triggering targeted DOM updates only when values change. It implements a state driver pattern for uni
vue2-happyfri is a frontend development starter kit and application template for the Vue 2 framework. It provides a foundational codebase designed for learning and implementing the core ecosystem of Vue.js. The project serves as a reference implementation for building single-page applications by combining Vue.js with Vue Router for navigation setup and Vuex for state management examples. It demonstrates how to map URL paths to page components and maintain consistent application state across multiple components. The codebase covers high-level capabilities including client-side routing and cen
This project is a pre-configured development environment and project boilerplate for building web applications with React, Redux, and React-Router. It provides a standardized project layout and toolchain to accelerate application bootstrapping. The project implements a feature-based architecture template, which uses a modular directory organization to group components, state, and logic by application feature rather than by technical file type. The toolchain includes a frontend configuration for compiling, linting, and bundling JavaScript and Sass assets, alongside a JavaScript unit testing s