DEV Community 👩‍💻👨‍💻

Cover image for Why didn't Preact replace React?
Jordan Brennan
Jordan Brennan

Posted on

Why didn't Preact replace React?

Preact is objectively better than React. It is React with significantly less kilobytes (more than an entire jQuery's worth!) and marginally less suck.

Big companies have shown its viability, so why does React still exist?

Does anyone in the React community know why?

Top comments (9)

Collapse
 
bykof profile image
Michael Bykovski

I would say because of the community. React has a lot more support and a lot of companies implementing React also want to "stand someone behind" a solution. Everybody knows Facebook and therefore it's more preferred to use React than from unknown contributors (i don't share this opinion)

Collapse
 
guitarino profile image
Kirill Shestakov

Yes, I think that's the biggest reason. I don't think companies or individuals actively try to be independent from everyone and choose the best technology rather than the most popular. People often prefer to follow what others are doing. I also wouldn't necessarily say that Preact is objectively better than React: they're two different frameworks with slightly different features, different ways of doing things, different priorities and, ultimately, different future. We can compare the two frameworks, but someone will still say that React is better, maybe because it's doing more things, or because it's doing things with async fibers or whatnot, or because they like that "onChange" really means "onInput", etc.

Collapse
 
eavichay profile image
Avichay Eyal

It's the herd phenomenon.

React was clearly way faster than Angular (the old one), back in the days Angular was the ONLY reasonable front-end framework. Everybody built websites using Angular, because that was almost the only option, and everybody knew that it had performance problems. Then came the "super-fast" React. And guess what, It was way simpler to work with.

Web-View based apps on mobile devices were not that common, so nobody really cared that Virtual-DOM is a battery consumption, and React forces you to work with keyed elements, but their key implementation has memory leaks nobody deals with since the day it was released. Nobody cared that JSX is actually a runtime, js-parsing, and memory bloats and also forces the garbage collector to work all the time.

But everyone is already on that train, so they keep going. It's the HERD that leads the way, not the common sense.

Collapse
 
jfbrennan profile image
Jordan Brennan

Yeah, I'm afraid you're right. I've never seen anyone articulate why they choose React and not Preact. Like Michael said, people feel more comfortable because it came from Facebook. That makes me less interested (Preact was created by one guy and it's objectively better)

Collapse
 
dorshinar profile image
Dor Shinar • Edited on

IMHO, for the standard web app, the difference is minute, and I'd prefer being under the giant umbrella of React and it's ecosystem.
When it comes to web sites though there might a bigger appeal to preact (I actually believe some of DEV is written in preact).
And I believe most companies aspire to build complex web apps over web sites.

Collapse
 
jfbrennan profile image
Jordan Brennan

I don't follow. How are you defining app and site?

Collapse
 
dorshinar profile image
Dor Shinar

There isn't a clear cut and dry difference, but I'd say that a blog is probably a web site, but something like GitHub is a web app.
It comes down to the level of interactivity and complexity I guess.

Thread Thread
 
jfbrennan profile image
Jordan Brennan

Ok, that's what I assumed. I still don't see why devs building apps would favor/benefit from React over Preact. The issues with React affect apps just as much as sites.

Collapse
 
devhammed profile image
Info Comment hidden by post author - thread only accessible via permalink
Hammed Oyedele

Some comments have been hidden by the post's author - find out more

Make Your Github Profile Stand Out

Github is great, but have you considered how to make yours more attractive for potential employers or other visitors? Even non-tech ones like recruiters!

Take a couple of hours and show your best side as a person - and a programmer.