30 open-source projects similar to astoilkov/use-local-storage-state, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Use-persisted-state is a React hook library that persists component state in browser storage and synchronizes updates across multiple tabs and windows. It extends standard component state management by automatically saving values to browser storage providers on every state update, ensuring user data survives page reloads and browser sessions. The library supports cross-component state sharing by linking multiple distinct component instances to a single storage key so they share and update identical data. It provides factory-generated hook instances that create isolated state functions bound t
localForage is a browser storage wrapper and key-value store that provides a unified JavaScript API for persisting data. It acts as an abstraction layer over IndexedDB, WebSQL, and localStorage, allowing web applications to save data offline. The library features a priority-based driver fallback system that automatically detects and selects the most capable storage engine available in the browser. It simplifies data management by providing an asynchronous interface for storing complex JavaScript objects and binary buffers without requiring manual serialization. The project covers broad capab
Effector is a reactive state management library designed for building complex, event-driven applications. It functions as a data flow engine that models application logic as a directed acyclic graph, ensuring that state updates propagate automatically through interconnected nodes. By utilizing atomic state updates and declarative unit composition, the library maintains data consistency and provides a predictable execution model for managing application state. The project distinguishes itself through its framework-agnostic architecture, which decouples business logic from user interface implem
Dexie.js is a wrapper library for IndexedDB that provides a simplified interface for managing and querying structured data within the browser. It functions as a browser database manager used to maintain persistent application state and store binary blobs and records. The project serves as an offline-first data store that synchronizes browser data with remote servers to maintain consistency across sessions. It also acts as a reactive database store by monitoring data changes in real time to trigger automatic user interface updates, and functions as a client-side search engine for indexing and
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
Dioxus is a cross-platform development framework designed for building native desktop, mobile, and web applications from a single codebase. It utilizes a declarative component model and macro-powered syntax to define reusable interface elements, which are then rendered as native widgets or web elements. At its core, the framework employs a signal-based reactivity system that tracks state dependencies to trigger granular updates, ensuring efficient interface performance without re-rendering the entire application tree. The framework distinguishes itself through a unified full-stack runtime tha
Store.js is a client-side state persistence library and web storage abstraction layer. It provides a consistent browser key-value storage wrapper that manages the persistence of application state across sessions using the most capable available local storage mechanism. The engine is extensible, allowing for the integration of custom storage backends and plugins to modify how data is read and written. It functions as a reactive web storage manager, monitoring specific keys to trigger notifications when stored values are updated. The library handles automatic data serialization for complex typ
Little State Machine is a lightweight state management library for React applications that provides a centralized data store for managing shared application information. It utilizes a context-based provider pattern to distribute state across the component tree, ensuring consistent data access without the need for manual property drilling. The library distinguishes itself through built-in support for automatic browser storage persistence, which synchronizes the in-memory state with local or session storage to maintain data continuity across page refreshes. It also incorporates middleware-drive
This project is a starter template and boilerplate for building isomorphic web applications using React, Redux, and Express. It functions as a server-side rendering framework that generates HTML on the server and rehydrates it on the client to improve search engine optimization and initial page load speeds. The project is distinguished by its focus on developer experience, featuring a configuration for hot module replacement. This allows for the real-time updating of the user interface and application state during development without requiring a full browser refresh. The framework provides c
Embla Carousel is a lightweight JavaScript carousel library and barebones slider engine designed for creating touch-enabled, swipeable content sliders. It functions as a plugin-based framework that manages scroll physics and slide positioning without imposing specific UI styles, while providing a programmable API for custom carousel development. The system is distinguished by its modular architecture, allowing developers to extend core logic through external plugins and custom event hooks. It is compatible with server-side rendering, generating initial styles on the server to prevent layout s
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
Jotai is a state management library for React applications that utilizes an atomic model to handle data. It organizes application state into small, independent units called atoms, which automatically track dependencies and trigger granular updates to components. By building state through these composable primitives, the library ensures that only the necessary parts of an application re-render when data changes. The library distinguishes itself through its flexible approach to state composition and asynchronous data handling. It integrates promises directly into the state model, allowing devel
Effector is a reactive state management library and data flow orchestrator designed for building complex, event-driven applications. It models application logic as a directed acyclic graph, where state updates and asynchronous side effects propagate automatically through declarative pipelines. By decoupling business logic from user interface layers, it allows developers to maintain state in independent containers that communicate via standard interfaces, ensuring the system remains framework-agnostic. The library distinguishes itself through its robust support for isolated execution scopes, w
This project is a comprehensive library of reusable React hooks designed to simplify browser API integration, state management, and component lifecycle tracking. It provides a declarative interface for managing complex browser interactions, allowing developers to encapsulate imperative logic into modular, composable functions that integrate directly with the component lifecycle. The library distinguishes itself by offering specialized utilities for asynchronous data orchestration, including built-in caching, retry logic, and loading state management. It also features advanced performance opti
Data-client is an asynchronous state management library designed to synchronize server data with frontend applications. It functions as a normalized cache manager that maps complex API responses into structured, relational entities, ensuring data consistency across the entire application. By providing a unified communication layer, the library supports both REST and GraphQL, allowing developers to bind network data directly to user interface components through declarative hooks. The library distinguishes itself through a robust architecture for optimistic user interface development, where loc
re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized, immutable database that serves as the single source of truth for the entire application state, enforcing a strict unidirectional data flow where events trigger state transitions and subsequent view updates. The framework distinguishes itself through a reactive signal graph and an interceptor-based middleware pipeline. By treating application logic as a sequence of data-driven events and declarative side effects, it decouples business logic from the view layer. This architectur
This project is an asynchronous key-value store designed for client-side data persistence. It provides a unified interface that allows applications to save and retrieve complex data types, including binary objects, while maintaining responsiveness through non-blocking operations. By enabling offline-first functionality, it ensures that data remains accessible even when a network connection is unavailable. The library distinguishes itself through a driver-based abstraction layer that automatically detects the most efficient storage mechanism available in the current browser or mobile environme
Crawlee-python is a web crawling framework for building scalable scrapers using Python. It serves as a comprehensive tool for web scraping automation, providing a system to extract structured data from websites using both lightweight HTTP requests and headless browser automation. The framework is distinguished by its anti-bot evasion capabilities, which include browser fingerprint impersonation and tiered proxy rotation to bypass detection systems and solve challenges such as Cloudflare. It also incorporates artificial intelligence for autonomous website navigation and schema-based data extra
Scriptcat is a user script manager and browser extension designed to install, execute, and manage custom JavaScript scripts to modify website behavior and extend browser functionality. It features a JavaScript sandbox environment that provides specialized APIs for storage, cookies, and system notifications, alongside a cloud-synced script repository to keep subscriptions and configurations consistent across multiple devices. The project includes an in-browser script editor for writing, testing, and debugging code directly within the browser. It also incorporates a cross-domain request engine
Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis
This library is a high-performance JSON processing tool for Java designed to handle data serialization and deserialization with minimal resource consumption. It provides a framework for transforming complex object graphs into JSON strings and mapping raw input directly to typed class properties. The library distinguishes itself by utilizing compile-time code generation and reflection-free mapping to eliminate expensive runtime overhead. By employing iterator-based stream parsing and zero-allocation buffer management, it processes large or deeply nested data structures while reducing garbage c
use-immer is a React state management utility that provides a custom hook for updating immutable state. It allows for the modification of a temporary draft version of data to calculate the next state transition. The tool simplifies the management of complex state by enabling direct mutations on a draft, which removes the need to manually copy nested objects or arrays using spread operators. This approach ensures the generation of a new immutable snapshot for predictable state changes. The library covers capabilities for updating deeply nested state and supports processing state changes throu
Pro Components is a collection of high-level React components built on Ant Design for creating enterprise-grade administrative interfaces. It serves as a specialized component suite and UI framework designed for building complex business dashboards and internal tools. The library functions as a visual interface builder that allows for the composition of professional web pages through declarative configurations and visual design patterns. It enables the creation of interface components using visual configuration tools to simplify the layout and styling process. The framework covers the constr
Pixel Art React is a browser-based pixel art editor that runs entirely client-side with no server dependency. It provides a grid canvas for drawing and editing pixel art, along with a frame-based animation engine that cycles through multiple frames with configurable playback speed controls. The editor distinguishes itself through its export capabilities, offering multi-format downloads as static images, animated GIFs, or sprite sheets. It also generates CSS code using box-shadow and keyframe techniques, allowing pixel art and animations to be embedded directly into web pages. Projects are per
Whitebophir is a collaborative whiteboarding application designed for real-time visual collaboration. It enables multiple users to brainstorm and create content together on a shared virtual canvas using freehand sketching, geometric shapes, and text labels. The platform focuses on private workspace management, allowing the creation of restricted boards via unique URLs and token-based access control to manage editing permissions. It integrates real-time state synchronization for drawing updates and a built-in chat system for text communication between collaborators. The workspace includes too
This project is a comprehensive collection of web development exercises and application concepts designed to help developers practice and improve their technical proficiency. It serves as a curated resource for building diverse software projects, ranging from simple utility tools to complex, interactive web applications that demonstrate core programming and interface design skills. The repository distinguishes itself by providing a wide array of practical implementation challenges that cover the full spectrum of frontend and full-stack development. Users can engage with tasks that require man
js-cookie is a lightweight JavaScript library and browser storage interface used to create, read, and delete cookies. It provides a programmatic API for managing client-side data persistence and maintaining browser state across page refreshes. The library includes capabilities for custom cookie encoding and the use of custom value converters to handle specific character formats. It also features a global attribute configuration system that allows default expiration, security, and scope rules to be applied automatically to all cookie operations. The tool covers general cookie management inclu
Authenticator is a multi-factor authentication manager and browser extension designed to generate and store two-step verification codes directly within a web browser. It functions as an encrypted secret store that produces both time-based and counter-based security codes to protect online account access. The project distinguishes itself through cross-browser synchronization, replicating authentication accounts across different browser instances using cloud or local backups. It utilizes password-based encryption to protect authentication seeds and provides a synchronization tool to maintain co
usehooks-ts is a comprehensive collection of reusable TypeScript-based hooks designed for managing state, DOM events, and browser API interactions within React applications. It provides a typed library of functions to handle common frontend patterns and side effects. The project distinguishes itself by offering specialized hooks for browser integration, including tools for interacting with the system clipboard, managing local and session storage persistence, and loading external scripts. It also includes utilities for responsive UI development, such as tracking media queries, window dimension
This project is a collection of reusable React hooks designed to wrap browser APIs, manage state persistence, and handle DOM observation. It provides a consistent interface for integrating native browser capabilities directly into the React component lifecycle. The library includes specialized toolkits for monitoring the browser environment, such as window resizing, network connectivity, and viewport visibility. It also provides mechanisms for managing execution timing through debouncing, throttling, and the control of timeouts and intervals. Additional capabilities cover state management wi