awesome-repositories.com
Blog
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to magicstack/immutables

Open-source alternatives to Immutables

14 open-source projects similar to magicstack/immutables, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Immutables alternative.

  • kotlin/kotlinx.collections.immutableKotlin avatar

    Kotlin/kotlinx.collections.immutable

    1,409View on 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
    View on GitHub↗1,409
  • facebook/immutable-jsfacebook avatar

    facebook/immutable-js

    33,060View on 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
    View on GitHub↗33,060
  • getify/functional-light-jsgetify avatar

    getify/Functional-Light-JS

    16,763View on GitHub↗

    Functional-Light-JS is a JavaScript functional programming library designed to implement functional patterns within JavaScript applications. It serves as a toolkit for declarative data processing, immutable data management, and the construction of complex logic through higher-order functions. The library focuses on a pragmatic implementation of functional programming, providing utilities for curried argument application and function composition. It emphasizes the use of pure functions to calculate state updates and manage application data without side effects. The project covers broad capabi

    JavaScript
    View on GitHub↗16,763

AI search

Explore more awesome repositories

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

Find more with AI search
  • chvin/react-tetrischvin avatar

    chvin/react-tetris

    8,717View on GitHub↗

    This is a browser-based Tetris game built with React, using Redux and Immutable.js to manage all game state in a single immutable store. The application renders the game board, next-block preview, and score display as React components, with state transitions that are predictable and support time-travel debugging through the Redux DevTools Extension. The game distinguishes itself through several integrated capabilities. It automatically adapts between keyboard and touch controls based on the user's input device, with configurable repeat rates for responsive gameplay. A persistence layer serial

    JavaScriptimmutablereactredux
    View on GitHub↗8,717
  • google/guavagoogle avatar

    google/guava

    51,473View on GitHub↗

    Guava is a Java standard library extension and utility toolkit that provides optimized data structures, concurrency tools, and core extensions. It serves as a comprehensive set of helpers for Java development, focusing on reducing repetitive boilerplate logic. The project is distinguished by its specialized implementations of immutable collections, which ensure thread safety and data consistency by preventing accidental modification. It also includes a dedicated graph data structure library for modeling and traversing networks of interconnected nodes and edges, alongside advanced collection t

    Javaguavajava
    View on GitHub↗51,473
  • immutable-js/immutable-jsimmutable-js avatar

    immutable-js/immutable-js

    33,060View on GitHub↗

    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

    TypeScript
    View on GitHub↗33,060
  • louthy/language-extlouthy avatar

    louthy/language-ext

    7,057View on GitHub↗

    language-ext is a functional programming framework for C# that provides a suite of immutable data structures and monadic types. It enables the implementation of pure functional programming patterns, utilizing containers to manage side effects, optional values, and error handling. The library is distinguished by its advanced concurrency and state management tools, including a software transactional memory system and lock-free atomic references. It also provides specialized utilities for distributed systems, such as vector clocks for causality tracking and deterministic data conflict resolution

    C#
    View on GitHub↗7,057
  • ramda/ramdaramda avatar

    ramda/ramda

    24,072View on GitHub↗

    Ramda is a functional JavaScript standard library and toolset for immutable data transformation and composition. It provides a comprehensive suite of pure utility functions designed to enable declarative data processing pipelines. The library is distinguished by its use of automatic function currying and a data-last argument order. These design patterns allow multi-argument functions to be partially applied, simplifying the construction of processing chains where data is passed through a sequence of operations. The toolkit covers broad data manipulation capabilities, including list processin

    JavaScriptjavascriptramda
    View on GitHub↗24,072
  • google/autogoogle avatar

    google/auto

    10,545View on GitHub↗

    This project is a Java annotation processing framework and source code generator designed to automate repetitive boilerplate and reduce manual coding errors. It functions as a toolkit for building custom annotation processors that produce source code, metadata, and type definitions during the compilation process. The framework specifically automates the creation of immutable value types with built-in equality and hashing logic, as well as the generation of factory implementations for dependency injection. It also handles the automated production of service provider configuration files to enab

    Java
    View on GitHub↗10,545
  • ruby-concurrency/concurrent-rubyruby-concurrency avatar

    ruby-concurrency/concurrent-ruby

    5,830View on GitHub↗

    Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data structures, synchronization primitives, and asynchronous execution patterns. It implements core concurrency abstractions including an actor model framework where isolated actors communicate through asynchronous message passing, a future and promise system for composing non-blocking operations, and thread pool executors that manage reusable worker threads for concurrent task execution. The library distinguishes itself through a broad set of coordination mechanisms that go beyond basic th

    Ruby
    View on GitHub↗5,830
  • tobgu/pyrsistenttobgu avatar

    tobgu/pyrsistent

    2,186View on GitHub↗

    Persistent/Immutable/Functional data structures for Python

    Python
    View on GitHub↗2,186
  • zhemao/funktownzhemao avatar

    zhemao/funktown

    76View on GitHub↗

    Immutable Data Structures for Python

    Python
    View on GitHub↗76
  • tek/aminotek avatar

    tek/amino

    36View on GitHub↗

    functional data structures and utilities for python

    Python
    View on GitHub↗36
  • discoproject/discodbdiscoproject avatar

    discoproject/discodb

    99View on GitHub↗

    An efficient, immutable, persistent mapping object

    C
    View on GitHub↗99