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

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoServidor MCPAcerca deCómo clasificamosPrensa
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
immutable-js avatar

immutable-js/immutable-js

0
View on GitHub↗
33,060 estrellas·1,850 forks·TypeScript·MIT·21 vistasimmutable-js.com↗

Immutable Js

Immutable.js is a library of persistent data structures and a functional state management toolkit. It provides a collection of immutable objects and arrays that prevent direct mutation to ensure predictable state management in JavaScript applications.

The library utilizes structural sharing to efficiently create new versions of data without full copying and implements lazy sequence processing to chain data transformations that execute only when values are requested. It also supports batch mutation processing, allowing multiple changes to be applied to a temporary mutable copy before returning an immutable version.

The toolkit covers a broad range of capabilities, including deep nested data updates, functional data manipulation, and value-based equality checking. It provides utilities for type conversion between persistent collections and native JavaScript objects and arrays, as well as tools for sorting, partitioning, and merging data structures.

Features

  • Structural Sharing - Employs structural sharing to reuse unchanged nodes between versions of persistent data structures, minimizing memory overhead.
  • Functional State Management - Provides a toolkit for managing application state using pure functions and immutable data structures.
  • Immutable Data Structures - Provides a suite of immutable data structures that transform plain JavaScript objects and arrays into persistent collections.
  • Application State Management - Provides a toolkit for application state management using persistent structures to ensure predictable updates in JavaScript.
  • Data Manipulation Libraries - Provides a comprehensive toolkit for transforming, filtering, and querying structured data while maintaining immutability.
  • Hash Array Mapped Tries - Implements Hash Array Mapped Tries to enable efficient updates of persistent collections through structural sharing.
  • Deep Object Manipulations - Provides utilities for recursive property updates and structural modifications of deeply nested data structures.
  • Path-Copying Persistence - Uses path-copying persistence to create new versions of data structures while preserving previous state.
  • Persistent Application State - Maintains persistent application state using immutable collections to ensure predictable updates and prevent direct mutation.
  • Persistent Data Structures - Implements persistent data structures that use structural sharing to efficiently preserve previous versions of state.
  • Value-Based Equality Checking - Implements value-based equality checking to optimize rendering and change detection by comparing content instead of references.
  • Lazy Sequence Processors - Ships a system for chaining data transformations that execute only when values are requested.
  • Immutable Mutation Batching - Supports batch mutation processing using temporary mutable copies to optimize performance during multiple rapid updates.
  • Lazy Iterators - Implements memory-efficient lazy iterators that defer data transformations until values are explicitly requested.
  • Path-Based Data Access - Enables path-based data access to read and update values deep within nested data trees without manual traversal.
  • Deep Equality Checks - Implements deep equality checks to determine if two collections are identical based on content rather than memory reference.
  • Deep Equality Comparison - Provides utilities for deep equality comparison of nested data structures by value.
  • Lazy Evaluation Patterns - Provides lazy sequence evaluation to defer map and filter computations until values are explicitly requested.
  • State Management - Persistent data collections for JavaScript.
  • Functional Programming - Library for creating and managing immutable data structures.
  • State Management - Listed in the “State Management” section of the Awesome React awesome list.
  • Utilities and Helpers - Immutable data collections for JavaScript.

Historial de estrellas

Gráfico del historial de estrellas de immutable-js/immutable-jsGráfico del historial de estrellas de immutable-js/immutable-js

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Immutable Js

Proyectos open-source similares, clasificados según cuántas características comparten con Immutable Js.
  • facebook/immutable-jsAvatar de facebook

    facebook/immutable-js

    33,060Ver en GitHub↗

    This is a persistent data structure library for JavaScript that provides collections which prevent the direct mutation of objects and arrays. It serves as an immutable state management tool and functional programming utility, ensuring that data remains unchanged after creation to simplify change detection and state tracking. The library enables the maintenance of application state by producing new versions of data structures during updates. It focuses on efficient data comparison by checking actual content instead of memory references and supports a functional programming workflow to prevent

    TypeScript
    Ver en GitHub↗33,060
  • lodash/lodashAvatar de lodash

    lodash/lodash

    61,235Ver en GitHub↗

    Lodash is a JavaScript utility library and data manipulation toolkit. It provides a collection of modular functions for transforming, filtering, and validating arrays, objects, strings, and numbers. The project functions as a functional programming toolkit, offering capabilities for function composition, currying, and lazy evaluation. It includes mechanisms for execution control, such as debouncing and throttling, to manage the timing and frequency of function invocations. The library covers a broad surface of data operations, including deep cloning and merging of complex nested structures,

    JavaScriptjavascriptlodashmodules
    Ver en GitHub↗61,235
  • pubkey/rxdbAvatar de pubkey

    pubkey/rxdb

    23,048Ver en GitHub↗

    This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d

    TypeScriptangularbrowser-databasecouchdb
    Ver en GitHub↗23,048
  • kotlin/kotlinx.collections.immutableAvatar de Kotlin

    Kotlin/kotlinx.collections.immutable

    1,409Ver en GitHub↗

    Kotlinx.collections.immutable is a persistent data structure library for Kotlin that provides immutable lists, sets, and maps for state management. It enforces strict immutability by exposing read-only interfaces that block unauthorized modifications at compile time, while persistent structural sharing allows modified copies to efficiently reuse underlying memory storage with the original collection. Multiple insertions and removals can be batched through temporary mutable builder interfaces to instantly produce new persistent collections without intermediate allocations. Additionally, stand

    Kotlincollectionsimmutableimmutable-collections
    Ver en GitHub↗1,409
Ver las 30 alternativas a Immutable Js→

Preguntas frecuentes

¿Qué hace immutable-js/immutable-js?

Immutable.js is a library of persistent data structures and a functional state management toolkit. It provides a collection of immutable objects and arrays that prevent direct mutation to ensure predictable state management in JavaScript applications.

¿Cuáles son las características principales de immutable-js/immutable-js?

Las características principales de immutable-js/immutable-js son: Structural Sharing, Functional State Management, Immutable Data Structures, Application State Management, Data Manipulation Libraries, Hash Array Mapped Tries, Deep Object Manipulations, Path-Copying Persistence.

¿Qué alternativas de código abierto existen para immutable-js/immutable-js?

Las alternativas de código abierto para immutable-js/immutable-js incluyen: facebook/immutable-js — This is a persistent data structure library for JavaScript that provides collections which prevent the direct mutation… lodash/lodash — Lodash is a JavaScript utility library and data manipulation toolkit. It provides a collection of modular functions… pubkey/rxdb — This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a… kotlin/kotlinx.collections.immutable — Kotlinx.collections.immutable is a persistent data structure library for Kotlin that provides immutable lists, sets,… louthy/language-ext — language-ext is a functional programming framework for C# that provides a suite of immutable data structures and… immerjs/immer — Immer is an immutable state management library used to create new versions of data structures. It allows the…