Coaction is a state management library designed specifically for multithreading environments in web applications.
Coaction leverages the power of web workers and shared workers to offload computationally intensive tasks and state management logic from the worker thread, delivering a more responsive and fluid user interface.
The library offers many features like multithreading synchronization, immutable state with optional mutability, patch-based updates, built-in computed, slices pattern, extensible middleware, and integration with third-party libraries like React, Angular, Vue, Svelte, and Solid.
Coaction is a performant library, performing hundreds of times faster than other state management libraries in large initialization tasks.
The library operates in two modes: standard mode and shared mode.
Standard mode stores the state entirely on the webpage thread, whereas shared mode utilizes the worker thread as the primary source of shared state, with the webpage thread as a client.
The shared mode of Coaction automatically manages the store's execution context based on the transport parameters, making synchronization seamless.
Coaction supports remote synchronization, making it suitable for building CRDTs application.
Coaction is an intuitive library with a smooth learning curve and a productive development workflow, designed for developers who strive to create exceptional user experiences in a world where parallelism and responsiveness are essential.
Coaction is a valuable tool for building the next generation of web applications without sacrificing performance, developer experience, or architectural integrity.