solant.me
@solant.me
Founder of the whining-driven development approach
There are quite a lot of things to improve on, like more options and filters and some performance improvements.

But my biggest concern is a giant hairball graph. I can do as much WASM and WebGPU as I want, but this is not something that can be solved with faster rendering.
July 22, 2025 at 11:33 PM
Which flags you as a junior frontend dev 😉, just use a teleport

Allow me to quote your previous message: “I don't look into docs, but source code”. You really should consider checking docs from time to time 😀

And again, this is not related to classes in any way
March 6, 2025 at 1:37 PM
This has nothing to do with classes, the same can be done using literally any framework

And there is nothing new with update batching, reactivity debug hooks, re-render detection, fragments, teleports, etc.
March 6, 2025 at 12:57 PM
You can do the same reusable instances via factory functions, and get all AOT optimizations

And the example you show is actually doable in any framework with a real reactivity system (like Vue), just export your reactive variables globally. Classes have nothing to do with it.
March 6, 2025 at 11:08 AM
You can do both, just don't use classes: HMR is a solved issue, every bundler has it

And performance gains from using tree-shaking and minification are huge, especially for third-party code and low-end devices

Performance gains from compiler optimizations are even better, it's like cherry on top
March 6, 2025 at 10:52 AM
To be clear, I was talking about JS classes, not CSS ones

CSS classes are OK, at least we know how to use them now
March 6, 2025 at 1:01 AM
4. Some optimizations from react compiler and Vue SFC compiler are not possible with classes. I'm pretty sure that vapor mode is not possible with classes

P.S. When you make a response, check it twice, because you really like to cherry-pick "comfortable" questions 😉
March 6, 2025 at 12:07 AM
bsky.app/profile/sola...

Three issues there
1. Tree-shaking
2. Minification
3. Deserialization
I'm not sure if you really need classes to get HOC working, but you can definitely create a function that returns a new component and add hooks on top

From pros, I can outline several issues:
1. Tree-shaking and minification
2. Issues with tooling (specifically for Vue ecosystem)
3. Deserialization
March 5, 2025 at 11:39 PM
ok, if you have looked into the source code of Vue, can you see the difference between React and Vue, and what is wrong with your take from the first reply?

And another one: how about checking issues with classes that I posted before (you can even ask AI, I won't consider it cheating 😉 this time)
March 5, 2025 at 10:36 PM
Welcome, friend, take a seat

Frontend developers have been rusting their "toolchains" for years now, and they ain't stopping any time soon 🦀
March 5, 2025 at 10:56 AM
You definitely didn't get how Vue works and what is the difference between Vue setup and React render function and what is the difference between Vue reactivity primitives and React useState

You really need to check out Vue docs, especially on reactivity and composition API
March 4, 2025 at 11:53 PM
It is not "somewhere else", check composition documentation

We all remember how the class-based approach didn't work for both Vue and React (and even Angular now) so don't get too delusional

And I also sent you a list of additional issues with classes, take a look so you might get a concept ;)
March 4, 2025 at 10:36 PM
And instead of addressing actual issues, you just start debacle mainstream frameworks you don't like because of NIH syndrome or something

P.S. I'm pretty sure you are a little wrong about the Vue because Vue doesn't create component instance on every render
March 4, 2025 at 7:18 PM
Yeah, I get that you are building the next father of all frameworks, but:

1. you have to create a unique className for every single component
2. components can't bee tree shaken and class member names can't be minified
3. the very docs contain code like `let me = this` because you fear loosing this
March 4, 2025 at 7:13 PM