monocle-ts
jotai
monocle-ts | jotai | |
---|---|---|
7 | 107 | |
1,016 | 17,287 | |
- | 1.4% | |
0.0 | 9.3 | |
over 1 year ago | 7 days ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
monocle-ts
-
Deep Cloning Objects in JavaScript, the Modern Way
Instead of the "deep path properties" syntax, you might want to take the opportunity to learn about functional lenses with monocle-ts
https://gcanti.github.io/monocle-ts/
-
I may have a crush on the TypeScript compiler, because of stuff like this
You may be interested also in checking out the implementation of Lens in monocle-ts, one of the libraries in the fp-ts ecosystem
-
Haskell Lens Tutorial by Exercises
For anyone - anyone who's faffed around with JavaScript's spread syntax when working with nested immutable data, anyway - struggling to understand the general concept or utility of lenses, I'd encourage looking into monocle-ts. The motivation [0] that kicks off the README instantly made me a believer, and TypeScript's idiosyncratic type system makes using the library remarkably natural; it fits right in without needing to deal with anything analogous to Template Haskell.
[0] https://github.com/gcanti/monocle-ts#motivation
-
Is there a cleaner way to immutably update a deeply nested attribute? (I feel like this is not very clean)
You could have a look at the monocle-ts library. It was designed to deal with this kind of problem.
-
Simple Immutable Data w/ Spectacles π
spectacles-ts integrates seamlessly with the fp-ts ecosystem (it's built on top of the excellent monocle-ts library)
-
Why is it so difficult to modify a deeply nested state in React?
lenses help with this quite a bit, check out monocle-ts
-
You could have invented lenses!
You notice that Getters are composable as they are just pure functions, but the fact that setters are mutating values is not that nice. Tho, at this point we have invented quasi mutable lenses and If you really want you might invent actual purely functional lenses as well, but thatβs for another day. Meanwhile you can take a look at an actual typescript lesses library from @gcanti / monocle-ts.
jotai
-
React Server Components Example with Next.js
Daishi Kato, creator of Zustand and Jotai, says there are a few things we need to support RSC serialization:
- 5 Alternatives to Redux for React State Management
-
jotai-wrapper, a super tiny and simple utility library
I've just published jotai-wrapper, a super tiny and simple utility library that makes using jotai even simpler. It comes from the necessity to migrate a project with react-context-slices to jotai. Both libraries share a similar API. While in react-context-slices you have the useSlice hook, in jotai you have the useAtom, useSetAtom, and useAtomValue hooks. In react-context-slices you define either React Context or Redux slices, while in jotai you define atoms. The need for the migration from the first to the second was a high memory usage by react-context-slices when using React Context slices.
-
React State Management in 2024
Atom-based: splits states into tiny pieces of data called atoms, which can be written to and read from using React hooks. In this group, we have Recoil and Jotai.
-
React Basics: Essential Knowledge for Every React Developer
jotai Is the signal based state manager I recommended, offering the best developer experience (in my opinion) as it eliminates the necessity to define and update a global store
-
π Dominate React Project Startups: Insider Tips for Dev Success! π€
Jotai π§ββοΈ
- Jotai β Primitive and flexible state management for React
-
Thoughts on Signals?
Atomic libs include Recoil, Jotai, and the one I maintain: Zedux. Zedux especially was designed to work well with sockets and RxJS observables and has been getting some traction recently, so of course I recommend checking it out. Feel free to hmu with any questions.
-
New Project: What is a good framework for a website?
Global State Machine: Jotai (great for any state that needs to be stored globally for your application)
- Is there a state management library, similar to Redux or Zustand, that automatically generates setters for the state you define?
What are some alternatives?
optics-ts - Type-safe, ergonomic, polymorphic optics for TypeScript
zustand - π» Bear necessities for state management in React
redux-toolkit - The official, opinionated, batteries-included toolset for efficient Redux development
spectacles-ts - Practical Optics β’ Unfancy monocle-ts
Recoil - Recoil is an experimental state management library for React apps. It provides several capabilities that are difficult to achieve with React alone, while being compatible with the newest features of React.
immutability-helper - mutate a copy of data without changing the original source
signals - Manage state with style in every framework
fp-ts-contrib - A community driven utility package for fp-ts
react-query - π€ Powerful asynchronous state management, server-state utilities and data fetching for TS/JS, React, Solid, Svelte and Vue. [Moved to: https://github.com/TanStack/query]
fp-ts - Functional programming in TypeScript
react-hook-form - π React Hooks for form state management and validation (Web + React Native)