wisdom
mobx-state-tree
Our great sponsors
wisdom | mobx-state-tree | |
---|---|---|
26 | 10 | |
567 | 6,864 | |
- | 0.3% | |
5.4 | 8.4 | |
8 months ago | 12 days ago | |
TypeScript | ||
GNU General Public License v3.0 only | 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.
wisdom
-
Ask HN: Best stack for real time data intensive apps
If you want to output to a browser here is the guide to achieve the best possible performance according to the numbers:
https://github.com/prettydiff/wisdom/blob/master/performance...
Warning: every time I post this people claim to want superior performance but then whine when they realize they have to actually write code (as opposed to letting NPM or React or jQuery do 99% of everything).
-
Ask HN: What are the hidden performance tricks for JavaScript?
This was attempt to research the fastest possible approach to a JavaScript GUI in the browser.
https://github.com/prettydiff/wisdom/blob/master/performance...
The techniques mentioned are stupid fast to the fewest milliseconds, but most JavaScript developers find this incredibly unpopular.
-
Ask HN: How can I learn about performance optimization?
Measure everything and be extremely critical. Be ready to challenge common and popular held assumptions.
Here is something I wrote about extreme performance in JavaScript that is discarded by most programmers because most people that program JavaScript professionally cannot really program.
https://github.com/prettydiff/wisdom/blob/master/performance...
-
Ask HN: What are good patterns for holding state?
For simple state management here is what I do: https://github.com/prettydiff/wisdom/blob/master/state_manag...
Here is an application with an OS-like GUI making use of that concept: https://github.com/prettydiff/share-file-systems
-
IBM study: 40% of workers will have to reskill in the next three years due to AI
The challenge is in determining who is about to become obsolete and that is not clear. For example OOP remains the most popular and requested programming paradigm even though it has gradually slid into functional obsolescence more than a decade ago[1].
Even still legacy code will remain in use and talent to maintain legacy systems will remain in demand. My university still teaches COBOL because there still exists demand for people to maintain these legacy applications even if new applications are no longer written in that language.
[1] https://github.com/prettydiff/wisdom/blob/master/Object_Orie...
-
TypeScript Is Surprisingly OK for Compilers
That depends on how many changes it requires. If its just a matter of don't do these 3 things and your code suddenly becomes more predictable its like being slapped with a magic wand. Everybody wins. All you have to do to ensure 100% of your code compiles in a JIT is be predictable. Predictable code is, on its face, always less confusing.
> The performance benefits are likely to be minimal
This makes me cry, but not a cry of joy or ecstasy. People guessing about performance is perhaps the most frequent anti-pattern in all programming. Please read this document, you can skip to the end but it may not make much sense if you do. https://github.com/prettydiff/wisdom/blob/master/JavaScript_...
-
As a self learner which courses, books, tutorials have impacted you positively?
After talking about the biggest failures I have seen through my career in learning JavaScript I watched a YouTube video about an interview with a divorce attorney. It was interesting because the behaviors I heard expressed in that video exactly aligned with behaviors I see expressed in failures to learn after large commitments of time investment in programming. It inspired me to write this: https://github.com/prettydiff/wisdom/blob/master/JavaScript_...
The most important learning for me out of this is that people are predictable and how we commit is modeled by how perceptions of rewards are attained. It also inspired me to dive deeper into self learning about behavior and economics, because people do exceptionally irrational things to avoid perceived discomfort.
-
Why are many of the biggest web frameworks in dynamically typed langs?
> just want to know what makes a good web framework.
Personal opinion. A framework is an architecture in a box so that you, the developer, do not have to make as many decisions. Normally when developers are asking such questions they are seeking easiness: https://github.com/prettydiff/wisdom/blob/master/Easiness.md
-
Htmx
Software developers, especially DOM fearing front developers love using the word easy. It isn’t so much an infatuation but more like a fatal attraction obsession where obstruction means war on a very emotional level. Ironically, people are loathe to confront these feelings openly and thus cannot define the word easy with any kind of clear practical application.
So, I did the world a favor and wrote just such a definition: https://github.com/prettydiff/wisdom/blob/master/Easiness.md...
-
Building a Front End Framework; Reactivity, Composability with No Dependencies
Depends on the definition of simplicity. People say they want simple, but then really want easy. The most easy is always somebody doing the work for you. I got tired of hearing people mention easy when really they probably mean some combination of fearful and/or lazy, so I chose to define easiness:
https://github.com/prettydiff/wisdom/blob/master/Easiness.md
If developers really wanted simplicity or to be done with work faster they would just learn the primitives of their environment: DOM, functions, and events. Most of the frameworks have APIs that are huge, so clearly simplicity isn't what's wanted.
mobx-state-tree
-
Building a Dynamic Job Board with Issues Github, Next.js, Tailwind CSS and MobX-State-Tree
Basic knowledge of Tailwind CSS and MobX-State-Tree
-
Performance with React Context API
Folks disagreed with my comment yesterday criticizing Redux as an architecture, but this sort of illustrates my point. I'd suggest taking a look at Mobx State Tree, which automatically re-renders components only when they depend on the specific part of the state that changed. Other fields can change without triggering unnecessary re-renders, and developers don't have to worry about manually splitting the state to deal with performance problems.
-
Ask HN: What is your favorite front end state management solution?
mobx-state-tree (https://mobx-state-tree.js.org/)
Benefits of it over mobx is data normalization with references and JSON patches which allow you sync complex state easily. Typed models are also a plus.
Drawbacks are performance (see https://github.com/mobxjs/mobx-state-tree/issues/1267).
Previously was using immer, which I loved because of immutability but moved off since classes and OOP didn't feel as natural as in mst.
If I were to pick an alternative, might try redux with normalization https://redux.js.org/usage/structuring-reducers/normalizing-....
And if I were to build a state management tool, I would prioritize a library that has
-
Managing my buisness logic with OOP
MobX - or even MobX-state-tree if you prefer
- Expo, what’s a good RAM usage?
-
[AskJS] I have spent 7 years creating a JavaScript alternative, would love to hear your feedback
As for state imba doesn't impose any paradigm on you - you are free to bring your own state managment. So you could use a library like mobx-state-tree.
-
MobX State Tree (MST) - State Management
We have covered almost all required topics from MobeX-State-Tree. MobeX provided few sample example, download ToDoMVC - app using React and MST and Bookshop - app with references, identifiers, routing, testing etc.
-
Best React + NodeJS tech stacks in 2021?
MobX-State-Tree -> MobX is a state management "engine", and MobX-State-Tree gives it structure and common tools you need for your app.
-
Why React Context is Not a "State Management" Tool (and Why It Doesn't Replace Redux)
Recoil is cool, I would also recommend mobx-state-tree which is not much more complex to use and gives you nice type safety and reactivity. You can easily get a snapshot of the whole store and restore from it.
What are some alternatives?
share-file-systems - Use a Windows/OSX like GUI in the browser to share files cross OS privately. No cloud, no server, no third party.
zustand - 🐻 Bear necessities for state management in React
dom-proxy - Develop lightweight and declarative UI with automatic dependecy tracking without boilerplate code, VDOM, nor compiler
mst-effect - 💫 Designed to be used with MobX-State-Tree to create asynchronous actions using RxJS
caya - a tiny useful simple language experiment
redux - A JS library for predictable global state management
MobX - Simple, scalable state management.
swc - Rust-based platform for the Web
kotlin-wrappers - Kotlin wrappers for popular JavaScript libraries
webcomponents - Web Components specifications
cra-template-redux - ARCHIVED: the CRA+JS template has moved to https://github.com/reduxjs/redux-templates