After seeing all the comments here I'm a bit relieved.
I don't care about the CEO's political stance, but Vercel's involvement with React has rubbed me the wrong way since the start of development of RSC. The development was basically behind half-closed doors, pretty much tied to Next.js (i.e. Vercel) and with zero specs except a high level description of what they were and their public API.
I don't care that they were WIP: the community should've been involved, not Vercel as a benevolent dictator guiding their design from start to almost finish. Such a huge paradigm shift shouldn't have been dictated by any particular entity... and IMO much less Next's team which I think are prone to overengineering and bad decisions.
IIRC there were points in time (maybe even currently?) where you had to use packages that were published to NPM but not even on any public repo.
I love the idea of RSC but that's where my love ends.
Increasingly bloated and complicated frameworks with intangible benefits used for webpages that are now just training data for LLMs is much more important.
I WISH it was JUST websites, but it also leaks into websites pretending to be real software.
And also fuck him for his political beliefs too while we're at it.
Edit: Rightly or wrongly, every time I open a website, click into it's search bar, type and hit enter and nothing happens, I curse fucking React. I can't prove they're all it it's just a gut feeling.
In this case people are critical of other things also and want to voice those things for selfish reasons without getting into mud slinging contests with fanatics who are protecting everything shitty just because it's their favourite hater that is on one side.
Perfect is the enemy of good and an ally of fanaticism.
Are you suggesting that vercels CEO is to be compared with Adolf Hitler, that killed millions of people in a systematic way?
Man people on HN are crazy nowadays. For me, Vercels CEO statements made me realize I am ditching Deno Deploy for Vercel. Finally some tech ceo with good values.
> For me, Vercels CEO statements made me realize I am ditching Deno Deploy for Vercel. Finally some tech ceo with good values
Hands down one of the cringiest things I've ever read on this site. And it's why people don't take HN seriously. It's filled with a bunch of 13 year-old "edgy" narcissists who can't code.
Clearly not. But Vercel's CEO recently posted a selfie of himself smiling next to Benyamin Netanyahou, currently under an ICC arrest mandate for, and I quote, "war crimes of starvation as a method of warfare and of intentionally directing an attack against the civilian population; and the crimes against humanity of murder, persecution, and other inhumane acts from at least 8 October 2023 until at least 20 May 2024".
You know what's crazy? Supporting genocide and warcrimes knowingly.
It’s much more likely (in my opinion) that Vercel’s CEO thinks those charges are a political hit and have no basis in in reality. I doubt he’d knowingly glad-hand with someone he thought was really guilty of such things.
I think you're being way too charitable with Vercel's CEO. I don't doubt he came up with some way to justify to himself that what Israel is doing is completely necessary and reasonable. But I doubt you can get access to a press conference with Netanyahu, then get close enough to shake his hand and take a selfi, then post the photo on social media with a tagline of the likes of "eternal glory to Israel" while having no idea of what is actually happening there. Either he's really that clueless about the world (In which case, how can he be CEO?), or he fully supports what is going on over there.
Is it because you aren't personally effected by what's happening in Gaza? Or are you saying that even if you were personally effected (i.e. you're home and family is being destroyed to help a guy avoid jail), you wouldn't care if the tech stack you use's CEO was besties with the war criminal doing that destroying?
edit: To add, this sounds self-righteous and I didnt' mean it to sound that way (maybe the little jab at the end at Bibi). It's just that this sentiment comes up a lot. And while I'm by no means anybody's north star on being a principled person, this genocide that's happening right now is insane.
> so I will give it exactly 0 seconds of thought when commenting on it.
You opened your post literally giving your thought about his political stance. Had you completely skipped this part, we'd be only discussing React and not Vercel's CEO stance.
Edit: Your quote can literally be understood as "His take doesn't bother me". If you didn't want to discuss this, you could (like someone else said) have worded it better to avoid confusion.
Why? Werner von Braun shouldn’t have been employed by the US, I think you’d agree. But also, his Nazi background didn’t preclude him from being a useful rocket scientist. Why does someone’s political ideas have any bearing on the merits of that person’s OSS technology (the thing this article is about).
Holy hell this might be the greatest HN comment ever. EVER!!!!!!!
> Why does someone’s political ideas have any bearing on the merits of that person’s OSS technology (the thing this article is about).
This is gonna be really, really hard to follow so pay attention. When you give money to a person, they can use that. So if they are doing stuff you don't like, you probably don't want to give them money.
lol "Hey, I know you're family members are dying over in Gaza, but maybe Vercel is the best option for a blog engine"
> But also, his Nazi background didn’t preclude him from being a useful rocket scientist.
Brother, this is gold.
we're talking about javascript frameworks hahahahaa
>lol. The moment Guillermo posted that picture, the internet was awash with blogs and pieces about how to move away from Vercel (who everyone now sees as the stewards of React).
This is actually kinda hilarious to have to respond to and explain to.
>Just because you don't have principles, doesn't mean other people don't.
>Cmon. You can't possibly believe actions don't have consequences, do you?
lol. The moment Guillermo posted that picture, the internet was awash with blogs and pieces about how to move away from Vercel (who everyone now sees as the stewards of React).
This is actually kinda hilarious to have to respond to and explain to.
Just because you don't have principles, doesn't mean other people don't.
Cmon. You can't possibly believe actions don't have consequences, do you?
I should remind that in a similarly cheerful mood FB dumped support of Jest and a bunch of other libraries. They have a long history of killing successful projects.
Worse, Vercel is involved, and I literally don't remember anything good about that company.
I'd recommend to be very cautious with such news, and use older versions of React for the next couple of years.
> Vercel is involved, and I literally don't remember anything good about that company.
They ship constantly, their UX is impeccable and they have made our lives as a startup infinitely easier, albeit at a higher cost which we're happy to pay.
Until they dump your startup for no reason, and you'll have to migrate off their undocumented proprietary infrastructure. Please read stories on HN. You're risking your business if you work with them.
Oh sweet summer child, you have no idea what is coming.
The second "happy to pay" becomes "we could hire a team of devs for what we pay vercel" you will realize you made a giant mistake.
Hopefully you will be suffering from success and have the runway to migrate away or just eat the costs, but many many startup die due to impossible unit economics driven by ridiculous hosting costs that platforms like vercel lock you into.
Happy to see a clear path for React going forward. React is under-appreciated in some circles of the fast-moving JavaScript world, where people are somehow expected to rewrite all their code from scratch every couple of years or so, after somebody starts shouting "framework X is dead", and everybody starts focusing on the new hotness. I'm not sure how that is economically viable, I know I couldn't afford that kind of approach.
I have a Clojure/ClojureScript app using React that I've been maintaining for the last 10 years. I don't use all the features of React, in fact I could probably use a much smaller library — the biggest advantage is that it provides a "re-render the UI based on app state change" model that fits Clojure very well. But I'm very happy that React is there and that it's been maintained with relatively little code rewriting necessary over the years.
> React is under-appreciated in some circles of the fast-moving JavaScript world, where people are somehow expected to rewrite all their code from scratch every couple of years or so, after somebody starts shouting "framework X is dead", and everybody starts focusing on the new hotness.
Has this ever really been the case in the past 10 years?
Really feels like react has held back frontend development. The idea that everything on the web should be written in react is baffling but I'm sure people thought similar thoughts when jquery or angular were popular.
No, and not before that either. It’s a bizarre thing to say, honestly. React is used near universally, despite there being alternatives that are better in almost every way. That is the opposite of being under appreciated. Hype about a new technology, deserved or not, doesn’t mean that everyone is throwing their old code away, especially not their jobby job code.
I think it's because around 2015 or so there was a lot happening with front end frameworks, and the sentiment comes from then and people have just not updated their priors since.
AngularJS was pretty popular at the time, Angular 2 migration was looming, backbone still existed, jQuery (standalone or paired with both) was going strong, Polymer hit 1.0 and it looked like Web Components might actually be something and useful, React was gaining a lot of popularity, Vue was gaining a small amount of popularity, svelte an even smaller amount, Meteor was somewhat popular and had its own front end library.
Of course in addition to all that, traditional server rendered sites were more popular then than now and there were even more options there.
However, React quickly became pretty much the default. Not that there's 0 churn there. The "right way" to do React has changed quite a bit in the last decade. And early on before all the libs people liked to glue together somewhat matured/settled it was common to have to replace stuff that just got abandoned.
More than once I had to pick up someone's old unmaintained project to do a bug fix only to find I couldn't even get the project to install/run because it was in the pre auto lock file era and nobody ever ran `npm shrinkwrap`
It is absolutely true that companies were rushing to rewrite their code every few years when the new shiny JS library or framework came out. I was there for it. There was a quick transition from [nothing / mootools?] to jQuery to Backbone to React, with a short Angular detour about 13 years ago. If you had experience with the "new" framework you could pretty much get a front-end gig anywhere with little friction. I rewrote many codebases across multiple companies to Backbone during that time per the request of engineering management.
Now, is React underappreciated? In the past 10 years or so I've started to see a pattern of lack of appreciation for what it brings to the table and the problems it solved. It is used near universally because it was such a drastic improvement over previous options that it was instantly adopted. But as we know, adoption does not mean appreciation.
> React is used near universally, despite there being alternatives that are better in almost every way.
Having worked in both over the years the main technical thing React had going for it over Vue, in my humble opinion, was much better Typescript support. Otherwise they are both so similar it comes down to personal preference.
However 0 of the typescript projects (front and back end) I've worked one (unless I was there when they started) used strict mode so the Typescript support was effectively wasted.
I read parent's comment as an assertion that the current "fast-moving JavaScript world" expects everyone to rewrite their app. Personally I've never seen this, but since React became popular ~13+ years ago, I struggle to believe this has actually been true for others in any meaningful way.
> despite there being alternatives that are better in almost every way.
This right here is the under appreciation. The new way to signal to others on forums that you are a really really great dev seems to be to bring up how much better some bizarro templating engine that abuses a niche JS language feature is.
The "in some circles of the fast-moving Javascript world" is important - they're not saying everyone or even most, they're saying proponents of the "better" systems (who do rewrite regularly) dismiss React's stability as unimportant or indicating it's dead when it's not.
It’s funny, personally I regard React as one of the frameworks requiring regular updates. So many teams that have spent so many hours shifting from class components to hooks based ones…
It feels like React generally has an ongoing trajectory towards increasing complexity and features. For something that's effectively become the standard for frontend that's unfortunate. It would be great to have a simple reliable base, with extensions & addition complexity layered on top or included optionally. This announcement doesn't fill me with hope for that direction unfortunately, it mostly seems like Vercel getting more control, and they're driving a lot of that movement.
Being able to ignore parallel rendering, RSC, hooks, etc, and just write simple code for simple sites again would be fantastic.
Unfortunately all the major competition I've seen seems so significantly different that migrating any kind of non-trivial application would basically be a full rewrite. Is Preact or similar offering much promise here?
I don't have experience from any larger application, but from my smaller usage Preact seems like a drop in replacement. It's been compatible with the react libraries I've tried. It also works great with ES modules. So for simple stuff, I think it's worth a try.
> Being able to ignore parallel rendering, RSC, hooks, etc, and just write simple code for simple sites again would be fantastic.
I don't understand this statement. You can use the basics without involving yourself with anything complex. You can even still use class components. You can build components that are framework agnostic.
When you're new it can be hard to tell what to ignore; it makes it tempting to pick a simpler framework that you can entirely grasp. Also any published examples, chatgpt etc won't be aware of the subset you've chosen to use when they're providing examples; they're gonna draw from the full set.
> It feels like React generally has an ongoing trajectory towards increasing complexity and features. For something that's effectively become the standard for frontend that's unfortunate.
Is that not every software development effort, ever? Isn't that why "todo" apps, search engines, etc, constantly get "recreated". Live long enough to become the enemy and get replaced by a bare bones app that'll bloat itself into oblivion and repeat the cycle?
It's not scary. It's a pretty small API surface. Lots of time is spent on component styling and all that stuff, which isn't React-specific.
Web components tech such as Lit might be part of the future, replacing JSX, and then React purely becomes a middleware tool for DOM diffing and shuffling events up and data down.
IMO OP is correct that the bootcamp devs are scary, not React itself.
I’ve interviewed a number of engineers who have very little grasp of what the DOM is and how it works because React abstracts the whole thing away. Server components are another are where some niceties mean a bunch of developers aren’t really understanding what’s going on with underlying HTTP requests.
While React’s API surface is small the average app will come with a chunk of extra stuff: Redux, next.js, yadda yadda. People take entire courses that never leave that bubble.
I think the point is not that there aren't alternatives—there were plenty of jQuery alternatives—but that React is the dominant force, and this too shall pass.
React won’t topple for a while, because of none of the alternatives are different enough. React solved a real problem many developers faced by giving them a state management system with a rendering engine, whereas you were likely to make surgical cuts before in response to state change, you can now just write your ui assuming the whole thing rerenders in response to changes to that state. The component system also allowed for an easy way of sharing code as dependencies. Vue, Svelte, Solid and the rest have their individual pros and cons when compared to react, but they are essentially different attempts to do the same thing.
You want to topple react, you need to solve a problem that’s as big as state management used to be in a way that react can’t also just copy/absorb, and you have to do it so well that developers will push to use it at work. You need to have a ux as clean as what React offers to its devs, and you probably need to come close enough in benchmarks to not get instantly shot down.
They are not. Extending JavaScript with an XML-like syntax that transpiles down to composable function calls feels far more natural. In contrast, extending HTML with a template syntax feels limiting and less intuitive in practice — thats why these frameworks are unlikely to ever reach the same level of traction as React.
Hard disagree. React is only popular because large companies made it so. There are few things that React is inherently better than Vue and none of them are its bundle footprint, page load speeds, nor the average time to learn one or the other.
Subjectively I am extremely in opposition to the fact that XML anything with composable functions is more intuitive than HTML templates by any stretch of the imagination.
I get your point, but to me it is about composition, not popularity. Writing UI as pure functions of state feels far more natural — recursion, higher-order patterns, dynamic layouts, all come easily because React is just JavaScript. In Vue or Svelte, recursion and logic feel bolted onto an HTML templating layer, which makes complex patterns less fluid.
What feels more "natural" is likely to be influenced by what you already know. I've always felt that JSX felt unnatural and Vue's and Svelte's way of doing it feels more natural.
fair — what feels natural usually depends on what you are used to. But even aside from preference, JSX aligns directly with how JavaScript itself works. You are not learning a new templating DSL — you just compose functions. That conceptual unity is what makes React approach click for for so many.
while jquery had a gajillion of exotic apis to do pretty much everything, react is, frankly, pure js with handful of apis: jsx (html with pure js), useState/useEffect/useMemo (rarely you need more), and initial hydration function. Rest is utility libraries, bundler, and all the wondeful things that brings you endless headache and depression because without them fulfilling yet another business req would take 10x more time
That's one way to sell a open source project I guess. Not only did Vercel really fight to not have any mention on the React docs about using React _without_ Vercel, but downright to using wording to imply that if you do then you're using it wrong. All clearly states the direction that Vercel is taking React. Soon enough it'll be Vercel-only software.
Yea Vercel being included in this also is a bummer to me - but honestly if history told us anything if they are making some stupid decisions, like completely vendor locking it, it wouldn't take long until a community maintained fork will be created. Same story as Valkey, OpenTofu, MariaDB, NextCloud and so on.
Oh yeah, and there already is (preact, for example). I'm not worried about losing front-end SPA libraries. If anything, I'm just annoyed at the endless greed of VC funded firms.
Is it me, or does $600,000 a year (presuming that $3M is over the 5 year period) seem a bit of a weak contribution from a company with a $1.8 trillion market cap that's regularly making $100M-$250M TC pay packages for AI scientists?
Like, I get that nothing is _owed_ here, but this feels like more of the same tragedy of the commons open source problem we see: tools that millions of apps depend on, barely propped up, and in this case, the child of a megacorporation that could easily create a proper evergreen endowment rather than a milquetoast token contribution to save face.
Somehow because Meta has released a popular OSS library and dedicated over 10 years of engineering resources to it (that has generated immense value for the wider ecosystem), that they should've shelled out more than the $3M they're contributing in order to give its ownership away to a non-profit.
Maybe it's just me but I think they've contributed more than enough. I'm grateful for what they've already contributed and anything else they choose to contribute in future.
You're right, $3million is a lot for an open source project, with no other context.
But in the context of who that $3million is coming from, how much they have available, how much responsibility they have for the state of it, and how much value it provides to everyone who isn't them, I think it's fair some people might have expected a little more.
If this went the other way where say FaceBook let people freely create accounts and talk to everybody and then later on either charged 10$/month, plastered the site with ads, or started to selling user data people would be upset about a bait and switch.
If you release something for free as you shouldn't be expected compensation for it. People also shouldn't expect anything beyond the terms that you've released it underneath as well.
They also have a team of full time react devs they are paying for. That seems to me more than sufficient.
$600,000/year just to run a governance board and organize a conference seems extraordinarily generous to me. In fact I think it's more likely the $3M is more likely to form an endowment for the foundation that will fund it's expenses running forward.
The post said they would also still pay for their own internal team that would keep contributing code to React, so it feels more like their throwing in $600k in addition to what they already do. And they have brought inn other companies who hopefully also contribute money, seems like a lot more of an healthy situation than before.
Please no. They don't have the best interests of React in mind.
They threw the resources behind RSC to make React, a framework for frontend reactivity, force opt-in for frontend reactivity. Meta is needed more than ever at this point, before React fully becomes a framework for burning compute on Vercel's infra.
Let's round their yearly revenue at around $160 billion, then assume they've spent $3 million a year on React. That would put the cost at 0.002% of revenue, or to put it another way, if they dedicated just 1% of revenue to philanthropy, they could fund 500 React sized projects indefinitely.
The new foundation could be a turning point for React, but whether it truly decentralizes decision-making depends on how governance works in practice, not just on the list of corporate sponsors. Open source foundations have helped some projects thrive by formalizing community input, but they can also be slow to adapt if board dynamics favor stability over innovation. The real question is whether small developer voices and radical ideas will shape React's future, or if practical influence stays with the largest sponsors. Compared to one company's oversight, a well-run foundation can make React less vulnerable to a single vendor's agenda—but only if its structures actively foster broad participation and accountability. We'll see if React's evolution speeds up or settles into consensus-driven conservatism.
Are you implicitly complaining that React is not moving fast enough? What the JS ecosystem needs is for some big players to CHILL a bit and take backwards compat more seriously.
Small tangent: I noticed the HN in the share menu is the only one in color. They're unable to change it unless they host a copy of the icon themselves (they're hotlinking https://news.ycombinator.com/y18.svg). Surprised they don't have their own CDN/icon font at Facebook scale.
Vercel employs maybe half [correction, maybe a quarter] of the React core team. For example, at the keynote at React Conf 2025, it was mentioned that Andrew Clark, who, if I am not mistaken, is employed by Vercel, worked on resolving the rendering issue of React that was blocking the release of React 19 after it was discovered in the release candidate.
Vercel and Next.js have been the main testing ground during the development of React server components as well.
How much has Vercel contributed to the development of react over the past years?
Vercel is the primary driver of react SSR / server components, which has also led to an explosion of complexity in react and has made it less useful as a composable library imo.
The last truly useful react feature for me was error boundaries in React 16 (2017?) and I think hooks was react 16 too?
These days if I need ui components for an existing SSR app I just use web components or lightweight libs like mithril.
It's just a tool. Are the people that run Makita terrible? Who knows, I just use their tools to fix cars. I use tools to build apps for businesses that pay me. There is far too much ideology based decision making in tech. Just build stuff with it or not.
Far too many smart people are putting their energies into such discussions that add a lot of drag to the process of society and humanity moving forward for no net gain at all.
As someone who isn't too familiar with Next and Vercel (having primarily used Nuxt, the Vue equivalent), it's helpful for me to know what's going on in the React world. Discussions like the above are actually helpful in terms of helping people choose between the various frameworks and hosts.
that is your opinion, and is irrelevant to the choice. practically, vercel is a company which is heavily invested in react and react's future, so, they need to be present.
moreover, this entire initiative looks like a way to reduce vercel's influence, so if you want to be mad, then be mad in 5 yrs, not now.
It is also my opinion that 5 years from now Vercel will be out of business and their customers will have moved on the next hype driven VC cash laundry.
What's a red flag is that there are 3 new accounts commenting on this reply and all are in agreement supporting your view.
Edit: apparently there's some confusion about my comment. I neither use, like, or support Next. I just found it suspicious that a bunch of new accounts showed up making generic comments in support of OP, which to me was a red flag.
Maybe people are afraid to speak up? I've gotten a fair bit of backlash on my negative complaints about NextJS on Reddit, someone even necro-posting on a months old reply then continuing "debating".
I think a somewhat neutral summary (of someone still annoyed by Vercel/Next) would be like this (Notice the distinctions between Site and App, not always clear cut but a dividing line imho):
- React was created by FB to solve real technical issues as their frontend became larger and more complex.
- Site creators liked it as it was one of the solutions of a real issue of reconcilliation of state and view (that often wasn't so bad in the big picture) but React was often a bit heavyweight, App creators really loved it as state reconcilliation took away that entire class of bugs that just became so much worse quickly as Apps grew (and React allowed for more people to create larger apps).
(Angular and Vue has always done this also, they are parallel developments)
- Pressure from those doing sites has always pushed development of React to be "simpler", often good for most parties (even if I think that Redux was mostly thrown overboard prematurely).
- Part of simplifications was bootstrapping, create-react-app became one of the recommended ways to start projects (and was also incorporated into other toolchains such as .NET templates)
- Heavy builds, disabled JavaScript and SEO issues was teetering issues (especially for public site builders), not entirely sure of the inspirations but Next did solve that (perhaps not always entirely elegantly initially)
- React internals start to change to better support these scenarios, nobody really has objections since changes in React has seldomly been for the worse (functional components, hooks, etc). Vercel gains traction as a "do-good" choice.
- After all troubles of OpenSSL, Node finally adopts OpenSSL 3.0 thus breaking create-react-app that had been "deprecated" by the React team (it's easily shimmable but it sent people looking).
- People looking for options find that the only "official" way to use React according to the site is to use Next, so many start adopting it out of fear of being left behind again.
- The Next model however is quite different and tailored to "site" builders and/or people running the full stack in JS
- React however is quite popular outside of the JS only world for enterprise SPA and/or mobile apps where trying to shoehorn in a Next "frontend-backend" becomes overkill and extra complexity. (We used it for one or two projects but have now abandoned it for our regular work).
- The React site is updated slightly, Vite and similar are now mentioned but the perception damage is there and hasn't let go (and last I checked using f.ex. Vite was not "recommended" as being an inferior option to Next for React usage)
- A very popular option for CSS-in-JS (styled) becomes deprecated due to React internals changing for Next and requiring significant rework that the original author had no interest in (no really clear successor with support across the board for Next, SPA and React-Native scenarios hadn't appeared last we checked).
Now this is my perception of events and I'm pretty sure that I'm not alone in this, the Next/React authors felt like it was the way forward due previous feedback for those that hurt (site builders) but probably misjudged or didn't appreciate how much React was used in other workloads(apps) that got disturbed while they were improving their thing.
That Vercel has managed to alienate people in other ways like billing (or politics?) certainly doesn't seem to have helped either.
My experience is that a lot of people on this forum are afraid to voice negative opinions on tools they use at work.
Seen a lot of people in my professional circles shit on Next/Vercel over beers, but then go to work every day and bang out Next because it's what their manager chose 5 years ago.
Vercel can only ride that wave until the people who hate their product are the decision makers.
- fragile under load and very difficult to debug SSR issues
- inconsistent behavior between hosted and self hosted versions of the same code
- horrible build times, like laughably bad multi-minute builds for trivial code bases
- crappy directory based routing system with lots of weird gotchas
- schizo identity JAMstack -> serverless -> ssr -> now its microvms + ai
- multiple hilariously long running GH issues where the dev team is thrashing around trying to debug their own black box framework
- "framework" that barely provides any of the primitives necessary to build web apps
- major breaking changes around core features like routing that require painful migrations
- general sloppiness, churn, and insecurity that comes from being part of the nodejs ecosystem
Thats not even getting into all of the shady patterns vercel uses to lock you into their overpriced hosting.
I've been a part of multiple teams that decided to build apps using NextJS, and while the FE is not my responsibility I typically got pulled in to help troubleshoot random issues. It was a complete waste of time in almost every case, and in one case resulted in the entire FE team being let go because they were unable to ship anything on time.
Yeah matches my experience. It’s just so much complexity just to get SSR. I’ve worked at places that used it for b2b SaaS apps with no public web part, so the SSR is just a big liability… whyyyyy
I use it for my web site where SSR is critical for SEO. For app development I don’t use Nextjs. I think it is designed for web sites (as opposed to web apps) and it is great for this purpose
I was pretty involved in their stack back in the day, it was a good alternative to Django at the time for simple plug and play admin apps, and to this day i think they had the simplest OAuth setup of any framework I've used.
The real issues were the super tight coupling with MongoDB and their decision to roll their own package ecosystem instead of just using npm from day one.
Not to mention their braindead decision to aggressively cache everything as much as possible, which they're now trying to undo, but still haven't shipped.
Used Astro for a pro bono project. Found it fantastic, well documented, provides solutions for the hard parts, gets out of the way for the easy parts. Documentation is well written, but I find I don't need it much because mostly it works how I would expect.
I've heard good things, what would you say is the killer reasons to justify being the nodejs ecosystem vs something more purpose built for ssr like php?
You lost me at React SSR. That is part of the complexity bs. React is a lib for mapping state to the DOM. There's no DOM on the server. So React on the server is 95% useless for that purpose and hence, overengineered to create a bit of HTML and send it down the wire.
I like the simplicity of Hono and use their html helper to write good old HTML that is send to the client.
If there is only one thing you take from my post, then look up "NextJS middleware auth bypass" or something along those lines. Have fun reading about that and then never touch NextJS or anything Vercel ever again.
I won't repeat what the sibling poster said, but I can tell you, I've been using NextJS from v12-v15 and in that time we've had:
- The catastrophic (and, at the time, UNDOCUMENTED) "aggressive, opt-out caching of all fetch calls", which confused the living daylights out of everyone who suddenly couldn't retrieve updated data from their servers. Like, don't override a native JS function that's supposed to work in an expected way, with black-box magic that adds caching behaviour that then needs to be overriden _per route_ with directives on each route. Cache headers can be added to fetch calls and are easy to configure globally via axios if needed. If you're going to do black magic, call it "nextfetch" or something
- The app router / page router transition was shockingly badly handled, with so much missing documentation around dynamic routes
- I don't know how many different ways of fetching / setting metadata / <head>-related techniques I've had to learn by now. It seems to change all the time. BUT, that isn't the worst part....the worst part was / is:
- You couldn't, for the longest time, fetch metadata for a page without duplicating fetch requests. I think this is where their fetch-deduping thing came from. But again, black-box magic on a native JS function with very inconsistent behaviour, so for a while, all pages in our app just had to make two fetch calls per page that needed specific metadata added to the <head>
- Vercel as a platform not allowing to set billing limits (have fun with your DDoS that they don't recognise as such)
- Middleware is one file. That's what you get. No chaining, nothing. One god-function for everything. Just think about the anti-pattern that is
- I don't know whether it's clever or terrible, but if you want to add a sitemap, you do so by defining a route by creating a folder called sitemap.xml (yes, a directory), where you then put your route.ts which is in keeping with the way the new router should work. But somehow it just doesn't sit right with me. Folders with file extensions. But it also adds a lot of ability to make the sitemap highly customisable and dynamic, so maybe it's ok
- You suddenly needed to start awaiting url params, cookies, etc. which is sort of fine, but was a huge change causing warnings all over the compiler for months and months
Anyway, those are just a few things off the top off my head. I already find React to be quite counter-intuitive and non-deterministic, but NextJS just adds a layer of pain on top with very, very few advantages.
I am dying to get my hands on an alternative, but also don't want to rebuild all of the apps I built when I was still optimistic about NextJS.
As a mostly-backend dev I stumbled across the "metadata in <head>" issue in my first hour of using NextJS for a toy project.
I kept wondering if there's something wrong with me or if a framework recommended in so many places can really be this shitty, until I read your comment.
I know Vercel has their fingers in a bunch of pies, but is there any significant vendor locking? I worked at a place where we just put nextJS in a docker container and hosted it ourselves, but maybe we would have got more on Vercel?
The people with money don't care, as the very next day Vercel got a series F. That is funny tho because I remember him being pretty anti-israel back in our High school on the long defunct semi-official foropelle.com.ar he owned and managed.
He is a programming prodigy, and that's it. Not a nice person.
Nevertheless, my anecdote should only be taken with a grain of salt... After all, the only person that probably has backups of foropelle is Rauch himself. And who cares what a teenager had to say back in 2006?
1. Vercel / Next are complete technical trash wrapped in egregious vendor lock-in. This directly influences their desire to steer the react foundation in a direction that aligns with their roadmap for Vercel/Next.
2. Their CEO thought it would be a good idea to have a photo op with perhaps the most controversial figure in world politics. This just means he's not nearly as smart as he thinks he is and likely needs a handler.
Just from your comments in this thread I'm going to venture a guess that you support Palestine and oppose Israel. Correct, yes?
And also, you want me to believe that your throwaway account's "purely technical critique" of Vercel is unmotivated by politics? Just a complete coincidence that the CEO is politically opposed to your faction.
If he didn't want political commentary being brought into discussions about the company he leads he should have used his big CEO brain to determine that a photo op with a highly polarizing fascist world leader is not a good look.
No politics? On HN? You must be a new user.
And for the record, I'm glad to be aware that the developers of a high-profile technology that I could end up using is actually supporting a genocide (that is a fact, not politics, I should note).
It’s natural for Vercel to have a strong influence on the project. That’s what happens when a framework grows large and fragmented without a defined board, group, or leadership focused on both short- and long-term goals. At least now, with the foundation in place, there are additional voices to help guide the project rather than letting it move entirely in line with Vercel’s direction.
According to the React team page [0], five members of the team work at Vercel. This has been the case for several years. Vercel has been a major contributor in the development of React. How does the creation of the foundation make React more dependent on Vercel?
I'm disappointed that Vercel is a part of this foundation. NextJS is on its way to its funeral, they have absolutely ruined it with things nobody asked for or cares about. I have been working on a large scale NextJS app which when I run locally consumes just over 8GB OF RAM on M4 Mac Mini. Brilliant. Slowly migrating the application to a Vite Based React SPA with a dedicated Hono backend and life is already looking already better.
Marky (FB) and Vicky (Vercel) are rich kids and are spending their tooth fairy money to buy every kid at your kindergarten a cool toy. Some kids don't like the toy, but that's okay there are other toys.
Some other kids (and esp their parents) think this is terrible, that Marky is being cheap and Vicky only wants control of the playground. They don't like Marky and Vicky and try to hurt them every chance they get.
But every kid at my kindergarten already had the toy. Any time they said npm install react, the new shiny toy was brought to them. I thought that's exactly what mattered to the kids, the toy. What do they care what shop the toy comes from or what Marky and Vicky are up to?
Soon current version of the toy will be deemed unsafe and start catching fire. You'll have to get a new version of the toy, still available easily but it'll only run on crazy expensive batteries you can get from Vicky. Or you could try to build your own batteries but specifications for those are hazardous, undocumented and changes over time.
Also, for the new version of the toy you'll have to learn to play a new game as the old way to play with it'll become half-working.
Because Markey called everyone dumbfucks back in 2004 and some people are still butthurt about it, so Mommy and daddy really don't like going to that particular store to buy things.
Oh man, having Vercel on the board is a bummer. Not only because they want to take React a way I disagree with, but it's clear that the CEO is on the wrong side of history in other matters as well (lots of recent drama).
I am baffled by this take that I've been seeing all over the internet recently. A CEO is a person. He is human. Can't a human be on the wrong side of history on various matters, and what does it matter if he is? Can't he still do a decent job (whatever it is that CEOs do)? Why do we expect random entrepreneurs, celebrities, engineers, and so on to also be moral authorities or role models?
This is always the same age-old discussion: Can you separate the art from the arists? And unsurprisingly, different people have different views on it. Even if you disagree, you should be able to understand why people don't want to use a product if their usage of that product makes the owner and CEO more powerful (and they think them being more powerful is a bad thing for humanity).
Edit to add a simple example:
Musk's wealth is mostly tied up in Tesla -> You think Musk uses his wealth to wield political power, political power that makes the world a worse place -> You still think Teslas are good cars -> Even though you think that, you don't want to spend your money on buying a Tesla, because this will make Musk more wealthly -> Start at the beginning
> A CEO is a person. He is human. Can't a human be on the wrong side of history on various matters, and what does it matter if he is? Can't he still do a decent job (whatever it is that CEOs do)? Why do we expect random entrepreneurs, celebrities, engineers, and so on to also be moral authorities or role models?
Exactly, it is a human behind the company that does every decision. Company is just legal shield. Every decision is affected by what they really are or think.
> Every decision is affected by what they really are or think.
This is called micromanagement :-)
I am sure there are organizations where the actual work that people do day to day is unaffected by who the people at the top are or what they think on matters other than the business (people at the top are often rather unpleasant anyway). I can't say whether such organizations are common or whether Vercel is one; but I believe I worked at such.
Most people in the company do what they are told to, because they are there to get money for the living. That is just about shifting responsibility to the upper level in hierarchy. So they are definitely affected by the decisions of the upper management.
Whenever there is a decisions to be made about increasing profits, for example, someone needs to judge based on moral weight. Outsource to India? Do something gray and think legal matters later? Maybe there is no moral, and the company should operate based on the risk assessment of fines breaking the law and negative PR. In all cases, "what person is", highly influences the outcome of these decisions.
In a well-functioning organization, the upper management set the vision and the goals for the company and for the product(s); and then let the people who do the actual work use their best judgement to move towards those goals. The upper management, of course, may decide that it would be more profitable to lay off the employees and to outsource to India; and that, of course, would have a direct impact on the work of those at the lower rungs; but I don't think that is the kind of concern that people have when they complain about Vercel's CEO.
It's just that if I were using Vercel or Next.js (which I don't), I would be viewing my relationship with Vercel on a solely transactional basis. If they were giving away for free something that I needed (React or Next), I would take it. If they were selling something that I needed (Vercel hosting, if I were reckless enough to tie myself to it), I would pay for the service. If they charged too much for the service, I would investigate alternatives. It wouldn't enter my mind that I were "supporting" them. I would rather imagine that they were "supporting" me. And I wouldn't give a monkey's who they have for a CEO.
Do you think a person of Palestinian origin should also continue seeing their relationship with Vercel on a solely transactional basis? Given that their families are likely affected and Vercel's CEO publicly supports it? I'm just trying to point out why people might have a different view on this.
I can't, of course, pretend to know what goes on in the mind of such a person; and of course I accept that people have different views; this is very plain to see. What I lament is that people with those views insist that everyone should cut ties with people with other views, rather than accepting that different people may have different views.
Let me give you a couple of different examples for comparison. Github blocked all users from Iran. Pnpm cut all traffic from Russian ips, whereas Linus Torvalds affirmed the removal of Russian maintainers of the Linux kernel. These are real adversarial actions, the like of which could impact my decisions about a company or a technology, if I were on the receiving end of those. Cowtowing to people in power and taking photos with hateful people is just an undignified behavior that is ultimately just noise.
I don't care about the CEO's political stance, but Vercel's involvement with React has rubbed me the wrong way since the start of development of RSC. The development was basically behind half-closed doors, pretty much tied to Next.js (i.e. Vercel) and with zero specs except a high level description of what they were and their public API.
I don't care that they were WIP: the community should've been involved, not Vercel as a benevolent dictator guiding their design from start to almost finish. Such a huge paradigm shift shouldn't have been dictated by any particular entity... and IMO much less Next's team which I think are prone to overengineering and bad decisions.
IIRC there were points in time (maybe even currently?) where you had to use packages that were published to NPM but not even on any public repo.
I love the idea of RSC but that's where my love ends.
I thought I was alone on this.
Something you'd only read on tech boards.
And also fuck him for his political beliefs too while we're at it.
Edit: Rightly or wrongly, every time I open a website, click into it's search bar, type and hit enter and nothing happens, I curse fucking React. I can't prove they're all it it's just a gut feeling.
In this case people are critical of other things also and want to voice those things for selfish reasons without getting into mud slinging contests with fanatics who are protecting everything shitty just because it's their favourite hater that is on one side.
Perfect is the enemy of good and an ally of fanaticism.
Man people on HN are crazy nowadays. For me, Vercels CEO statements made me realize I am ditching Deno Deploy for Vercel. Finally some tech ceo with good values.
No, Netanyahu.
Who Vercel's CEO recently posted for a selfie with on X, wishing "greatness for Israel".
Without mentioning the genocide being committed by Netanyahu right now.
Hands down one of the cringiest things I've ever read on this site. And it's why people don't take HN seriously. It's filled with a bunch of 13 year-old "edgy" narcissists who can't code.
You know what's crazy? Supporting genocide and warcrimes knowingly.
Do you really believe, he believes starving in Gaza is not real?
With all the top tier access to information he has in his position?
Is it because you aren't personally effected by what's happening in Gaza? Or are you saying that even if you were personally effected (i.e. you're home and family is being destroyed to help a guy avoid jail), you wouldn't care if the tech stack you use's CEO was besties with the war criminal doing that destroying?
edit: To add, this sounds self-righteous and I didnt' mean it to sound that way (maybe the little jab at the end at Bibi). It's just that this sentiment comes up a lot. And while I'm by no means anybody's north star on being a principled person, this genocide that's happening right now is insane.
I don't care because I'm just analyzing Vercel's stewardship of React, and Vercel's CEO political stance has zero impact on React's health.
This post is about React. Not about Gaza or politics, so I will give it exactly 0 seconds of thought when commenting on it.
You opened your post literally giving your thought about his political stance. Had you completely skipped this part, we'd be only discussing React and not Vercel's CEO stance.
Edit: Your quote can literally be understood as "His take doesn't bother me". If you didn't want to discuss this, you could (like someone else said) have worded it better to avoid confusion.
This might be one of the most naive statements I've ever read on this site.
Also, it's obviously not "just about React".
> Why does someone’s political ideas have any bearing on the merits of that person’s OSS technology (the thing this article is about).
This is gonna be really, really hard to follow so pay attention. When you give money to a person, they can use that. So if they are doing stuff you don't like, you probably don't want to give them money.
lol "Hey, I know you're family members are dying over in Gaza, but maybe Vercel is the best option for a blog engine"
> But also, his Nazi background didn’t preclude him from being a useful rocket scientist.
Brother, this is gold.
we're talking about javascript frameworks hahahahaa
>lol. The moment Guillermo posted that picture, the internet was awash with blogs and pieces about how to move away from Vercel (who everyone now sees as the stewards of React). This is actually kinda hilarious to have to respond to and explain to.
>Just because you don't have principles, doesn't mean other people don't.
>Cmon. You can't possibly believe actions don't have consequences, do you?
This is actually kinda hilarious to have to respond to and explain to.
Just because you don't have principles, doesn't mean other people don't.
Cmon. You can't possibly believe actions don't have consequences, do you?
You guys are insane.
Worse, Vercel is involved, and I literally don't remember anything good about that company.
I'd recommend to be very cautious with such news, and use older versions of React for the next couple of years.
They ship constantly, their UX is impeccable and they have made our lives as a startup infinitely easier, albeit at a higher cost which we're happy to pay.
The second "happy to pay" becomes "we could hire a team of devs for what we pay vercel" you will realize you made a giant mistake.
Hopefully you will be suffering from success and have the runway to migrate away or just eat the costs, but many many startup die due to impossible unit economics driven by ridiculous hosting costs that platforms like vercel lock you into.
I have a Clojure/ClojureScript app using React that I've been maintaining for the last 10 years. I don't use all the features of React, in fact I could probably use a much smaller library — the biggest advantage is that it provides a "re-render the UI based on app state change" model that fits Clojure very well. But I'm very happy that React is there and that it's been maintained with relatively little code rewriting necessary over the years.
Has this ever really been the case in the past 10 years?
Its gotten so bad that when I read FE dev I interpret it as "React Dev".
AngularJS was pretty popular at the time, Angular 2 migration was looming, backbone still existed, jQuery (standalone or paired with both) was going strong, Polymer hit 1.0 and it looked like Web Components might actually be something and useful, React was gaining a lot of popularity, Vue was gaining a small amount of popularity, svelte an even smaller amount, Meteor was somewhat popular and had its own front end library.
Of course in addition to all that, traditional server rendered sites were more popular then than now and there were even more options there.
However, React quickly became pretty much the default. Not that there's 0 churn there. The "right way" to do React has changed quite a bit in the last decade. And early on before all the libs people liked to glue together somewhat matured/settled it was common to have to replace stuff that just got abandoned.
More than once I had to pick up someone's old unmaintained project to do a bug fix only to find I couldn't even get the project to install/run because it was in the pre auto lock file era and nobody ever ran `npm shrinkwrap`
It is absolutely true that companies were rushing to rewrite their code every few years when the new shiny JS library or framework came out. I was there for it. There was a quick transition from [nothing / mootools?] to jQuery to Backbone to React, with a short Angular detour about 13 years ago. If you had experience with the "new" framework you could pretty much get a front-end gig anywhere with little friction. I rewrote many codebases across multiple companies to Backbone during that time per the request of engineering management.
Now, is React underappreciated? In the past 10 years or so I've started to see a pattern of lack of appreciation for what it brings to the table and the problems it solved. It is used near universally because it was such a drastic improvement over previous options that it was instantly adopted. But as we know, adoption does not mean appreciation.
> React is used near universally, despite there being alternatives that are better in almost every way.
Good example of under-appreciation.
However 0 of the typescript projects (front and back end) I've worked one (unless I was there when they started) used strict mode so the Typescript support was effectively wasted.
> despite there being alternatives that are better in almost every way.
This right here is the under appreciation. The new way to signal to others on forums that you are a really really great dev seems to be to bring up how much better some bizarro templating engine that abuses a niche JS language feature is.
backwards compatibility is underrated
Being able to ignore parallel rendering, RSC, hooks, etc, and just write simple code for simple sites again would be fantastic.
Unfortunately all the major competition I've seen seems so significantly different that migrating any kind of non-trivial application would basically be a full rewrite. Is Preact or similar offering much promise here?
I don't understand this statement. You can use the basics without involving yourself with anything complex. You can even still use class components. You can build components that are framework agnostic.
And you may have to work with developers who have a different preferred subset.
Is that not every software development effort, ever? Isn't that why "todo" apps, search engines, etc, constantly get "recreated". Live long enough to become the enemy and get replaced by a bare bones app that'll bloat itself into oblivion and repeat the cycle?
React is obviously the "new jquery", and something else will come one day. So many specially boot-camp devs are "react only" devs.
Scary stuff.
Web components tech such as Lit might be part of the future, replacing JSX, and then React purely becomes a middleware tool for DOM diffing and shuffling events up and data down.
I’ve interviewed a number of engineers who have very little grasp of what the DOM is and how it works because React abstracts the whole thing away. Server components are another are where some niceties mean a bunch of developers aren’t really understanding what’s going on with underlying HTTP requests.
While React’s API surface is small the average app will come with a chunk of extra stuff: Redux, next.js, yadda yadda. People take entire courses that never leave that bubble.
"Something else" is already here and has been for a long time. Vue and Svelte are both excellent alternatives.
You want to topple react, you need to solve a problem that’s as big as state management used to be in a way that react can’t also just copy/absorb, and you have to do it so well that developers will push to use it at work. You need to have a ux as clean as what React offers to its devs, and you probably need to come close enough in benchmarks to not get instantly shot down.
Subjectively I am extremely in opposition to the fact that XML anything with composable functions is more intuitive than HTML templates by any stretch of the imagination.
Why? When jQuery went away nothing happened. People just learned the new frameworks.
And it might never unless browsers implement better DOM apis.
The current DOM API implementation reminds me of that quote:
"look what they need to mimic a fraction of our power"
Like, I get that nothing is _owed_ here, but this feels like more of the same tragedy of the commons open source problem we see: tools that millions of apps depend on, barely propped up, and in this case, the child of a megacorporation that could easily create a proper evergreen endowment rather than a milquetoast token contribution to save face.
Or should we just be grateful?
Somehow because Meta has released a popular OSS library and dedicated over 10 years of engineering resources to it (that has generated immense value for the wider ecosystem), that they should've shelled out more than the $3M they're contributing in order to give its ownership away to a non-profit.
Maybe it's just me but I think they've contributed more than enough. I'm grateful for what they've already contributed and anything else they choose to contribute in future.
But in the context of who that $3million is coming from, how much they have available, how much responsibility they have for the state of it, and how much value it provides to everyone who isn't them, I think it's fair some people might have expected a little more.
If this went the other way where say FaceBook let people freely create accounts and talk to everybody and then later on either charged 10$/month, plastered the site with ads, or started to selling user data people would be upset about a bait and switch.
If you release something for free as you shouldn't be expected compensation for it. People also shouldn't expect anything beyond the terms that you've released it underneath as well.
$600,000/year just to run a governance board and organize a conference seems extraordinarily generous to me. In fact I think it's more likely the $3M is more likely to form an endowment for the foundation that will fund it's expenses running forward.
For now. My guess is they will be included in the next round of layoffs. Money for $100 Million to AI researchers has to come from somewhere!
is probably worth more in practice. The $3m will basically just cover 'founding the foundation' I guess.
I do wonder whether this is a sign Facebook may no longer develop new stuff in React.
They threw the resources behind RSC to make React, a framework for frontend reactivity, force opt-in for frontend reactivity. Meta is needed more than ever at this point, before React fully becomes a framework for burning compute on Vercel's infra.
https://www.cnn.com/2025/04/25/tech/chan-zuckerberg-primary-...
NextJS is a pile of garbage, and their platform is absurdly expensive and leans heavily on vendor lock in.
Vercel and Next.js have been the main testing ground during the development of React server components as well.
How much has Vercel contributed to the development of react over the past years?
The last truly useful react feature for me was error boundaries in React 16 (2017?) and I think hooks was react 16 too?
These days if I need ui components for an existing SSR app I just use web components or lightweight libs like mithril.
Far too many smart people are putting their energies into such discussions that add a lot of drag to the process of society and humanity moving forward for no net gain at all.
The CEO's politics are just icing on the cake.
moreover, this entire initiative looks like a way to reduce vercel's influence, so if you want to be mad, then be mad in 5 yrs, not now.
…people paying for react.
Which is fair, but do we have bend knee and suggest they have the best interests of the react ecosystem at heart? They don’t.
They are invested in: people using next.js and hosting it on vercel.
If that’s not what you’re doing, their interests probably don’t align with yours.
Edit: apparently there's some confusion about my comment. I neither use, like, or support Next. I just found it suspicious that a bunch of new accounts showed up making generic comments in support of OP, which to me was a red flag.
I think a somewhat neutral summary (of someone still annoyed by Vercel/Next) would be like this (Notice the distinctions between Site and App, not always clear cut but a dividing line imho):
- React was created by FB to solve real technical issues as their frontend became larger and more complex.
- Site creators liked it as it was one of the solutions of a real issue of reconcilliation of state and view (that often wasn't so bad in the big picture) but React was often a bit heavyweight, App creators really loved it as state reconcilliation took away that entire class of bugs that just became so much worse quickly as Apps grew (and React allowed for more people to create larger apps).
(Angular and Vue has always done this also, they are parallel developments)
- Pressure from those doing sites has always pushed development of React to be "simpler", often good for most parties (even if I think that Redux was mostly thrown overboard prematurely).
- Part of simplifications was bootstrapping, create-react-app became one of the recommended ways to start projects (and was also incorporated into other toolchains such as .NET templates)
- Heavy builds, disabled JavaScript and SEO issues was teetering issues (especially for public site builders), not entirely sure of the inspirations but Next did solve that (perhaps not always entirely elegantly initially)
- React internals start to change to better support these scenarios, nobody really has objections since changes in React has seldomly been for the worse (functional components, hooks, etc). Vercel gains traction as a "do-good" choice.
- After all troubles of OpenSSL, Node finally adopts OpenSSL 3.0 thus breaking create-react-app that had been "deprecated" by the React team (it's easily shimmable but it sent people looking).
- People looking for options find that the only "official" way to use React according to the site is to use Next, so many start adopting it out of fear of being left behind again.
- The Next model however is quite different and tailored to "site" builders and/or people running the full stack in JS
- React however is quite popular outside of the JS only world for enterprise SPA and/or mobile apps where trying to shoehorn in a Next "frontend-backend" becomes overkill and extra complexity. (We used it for one or two projects but have now abandoned it for our regular work).
- The React site is updated slightly, Vite and similar are now mentioned but the perception damage is there and hasn't let go (and last I checked using f.ex. Vite was not "recommended" as being an inferior option to Next for React usage)
- A very popular option for CSS-in-JS (styled) becomes deprecated due to React internals changing for Next and requiring significant rework that the original author had no interest in (no really clear successor with support across the board for Next, SPA and React-Native scenarios hadn't appeared last we checked).
Now this is my perception of events and I'm pretty sure that I'm not alone in this, the Next/React authors felt like it was the way forward due previous feedback for those that hurt (site builders) but probably misjudged or didn't appreciate how much React was used in other workloads(apps) that got disturbed while they were improving their thing.
That Vercel has managed to alienate people in other ways like billing (or politics?) certainly doesn't seem to have helped either.
Seen a lot of people in my professional circles shit on Next/Vercel over beers, but then go to work every day and bang out Next because it's what their manager chose 5 years ago.
Vercel can only ride that wave until the people who hate their product are the decision makers.
your comment would be a lot more interesting if you attempted to pose a counterpoint besides "BOT!".
- inconsistent behavior between hosted and self hosted versions of the same code
- horrible build times, like laughably bad multi-minute builds for trivial code bases
- crappy directory based routing system with lots of weird gotchas
- schizo identity JAMstack -> serverless -> ssr -> now its microvms + ai
- multiple hilariously long running GH issues where the dev team is thrashing around trying to debug their own black box framework
- "framework" that barely provides any of the primitives necessary to build web apps
- major breaking changes around core features like routing that require painful migrations
- general sloppiness, churn, and insecurity that comes from being part of the nodejs ecosystem
Thats not even getting into all of the shady patterns vercel uses to lock you into their overpriced hosting.
I've been a part of multiple teams that decided to build apps using NextJS, and while the FE is not my responsibility I typically got pulled in to help troubleshoot random issues. It was a complete waste of time in almost every case, and in one case resulted in the entire FE team being let go because they were unable to ship anything on time.
The real issues were the super tight coupling with MongoDB and their decision to roll their own package ecosystem instead of just using npm from day one.
I like the simplicity of Hono and use their html helper to write good old HTML that is send to the client.
I hope this isnt the way that React as a whole will go in the end.
But fortunately there are enough alternatives about.
I won't repeat what the sibling poster said, but I can tell you, I've been using NextJS from v12-v15 and in that time we've had:
- The catastrophic (and, at the time, UNDOCUMENTED) "aggressive, opt-out caching of all fetch calls", which confused the living daylights out of everyone who suddenly couldn't retrieve updated data from their servers. Like, don't override a native JS function that's supposed to work in an expected way, with black-box magic that adds caching behaviour that then needs to be overriden _per route_ with directives on each route. Cache headers can be added to fetch calls and are easy to configure globally via axios if needed. If you're going to do black magic, call it "nextfetch" or something
- The app router / page router transition was shockingly badly handled, with so much missing documentation around dynamic routes
- I don't know how many different ways of fetching / setting metadata / <head>-related techniques I've had to learn by now. It seems to change all the time. BUT, that isn't the worst part....the worst part was / is:
- You couldn't, for the longest time, fetch metadata for a page without duplicating fetch requests. I think this is where their fetch-deduping thing came from. But again, black-box magic on a native JS function with very inconsistent behaviour, so for a while, all pages in our app just had to make two fetch calls per page that needed specific metadata added to the <head>
- Vercel as a platform not allowing to set billing limits (have fun with your DDoS that they don't recognise as such)
- Middleware is one file. That's what you get. No chaining, nothing. One god-function for everything. Just think about the anti-pattern that is
- I don't know whether it's clever or terrible, but if you want to add a sitemap, you do so by defining a route by creating a folder called sitemap.xml (yes, a directory), where you then put your route.ts which is in keeping with the way the new router should work. But somehow it just doesn't sit right with me. Folders with file extensions. But it also adds a lot of ability to make the sitemap highly customisable and dynamic, so maybe it's ok
- You suddenly needed to start awaiting url params, cookies, etc. which is sort of fine, but was a huge change causing warnings all over the compiler for months and months
Anyway, those are just a few things off the top off my head. I already find React to be quite counter-intuitive and non-deterministic, but NextJS just adds a layer of pain on top with very, very few advantages.
I am dying to get my hands on an alternative, but also don't want to rebuild all of the apps I built when I was still optimistic about NextJS.
Whoever implemented that has no idea how middleware is supposed to work.
I kept wondering if there's something wrong with me or if a framework recommended in so many places can really be this shitty, until I read your comment.
I only vibe code in my Metaverse open office by thinking with my Beta NeuralLink.
It's designed to be deployed on Vercel. Production-ready hosting part of the Framework is not Open Source nor well documented.
https://github.com/vercel/next.js/discussions/59167 https://www.netlify.com/blog/how-we-run-nextjs/
the official recommendation we got was to just run it on vercel
I would go as far to say that nextjs is not self-hostable in its current state if you expect high traffic and low latency.
He is a programming prodigy, and that's it. Not a nice person.
Nevertheless, my anecdote should only be taken with a grain of salt... After all, the only person that probably has backups of foropelle is Rauch himself. And who cares what a teenager had to say back in 2006?
1. Vercel / Next are complete technical trash wrapped in egregious vendor lock-in. This directly influences their desire to steer the react foundation in a direction that aligns with their roadmap for Vercel/Next.
2. Their CEO thought it would be a good idea to have a photo op with perhaps the most controversial figure in world politics. This just means he's not nearly as smart as he thinks he is and likely needs a handler.
And also, you want me to believe that your throwaway account's "purely technical critique" of Vercel is unmotivated by politics? Just a complete coincidence that the CEO is politically opposed to your faction.
So yes, it is a complete coincidence that vercel/next is garbage and that their CEO is cozy with fascists.
There are plenty of technical critiques of next in this thread.
I would start by googling "NextJs auth middleware bypass" if you would like concrete examples of their incompetency.
If he didn't want political commentary being brought into discussions about the company he leads he should have used his big CEO brain to determine that a photo op with a highly polarizing fascist world leader is not a good look.
i do not care about what those 2 idiot nations do.
[0] - https://react.dev/community/team
Some other kids (and esp their parents) think this is terrible, that Marky is being cheap and Vicky only wants control of the playground. They don't like Marky and Vicky and try to hurt them every chance they get.
Also, for the new version of the toy you'll have to learn to play a new game as the old way to play with it'll become half-working.
At least that's what parents are afraid of.
Vercel wants to own React, its been obvious about it for years now.
Edit to add a simple example:
Musk's wealth is mostly tied up in Tesla -> You think Musk uses his wealth to wield political power, political power that makes the world a worse place -> You still think Teslas are good cars -> Even though you think that, you don't want to spend your money on buying a Tesla, because this will make Musk more wealthly -> Start at the beginning
Exactly, it is a human behind the company that does every decision. Company is just legal shield. Every decision is affected by what they really are or think.
This is called micromanagement :-)
I am sure there are organizations where the actual work that people do day to day is unaffected by who the people at the top are or what they think on matters other than the business (people at the top are often rather unpleasant anyway). I can't say whether such organizations are common or whether Vercel is one; but I believe I worked at such.
Whenever there is a decisions to be made about increasing profits, for example, someone needs to judge based on moral weight. Outsource to India? Do something gray and think legal matters later? Maybe there is no moral, and the company should operate based on the risk assessment of fines breaking the law and negative PR. In all cases, "what person is", highly influences the outcome of these decisions.
Let me give you a couple of different examples for comparison. Github blocked all users from Iran. Pnpm cut all traffic from Russian ips, whereas Linus Torvalds affirmed the removal of Russian maintainers of the Linux kernel. These are real adversarial actions, the like of which could impact my decisions about a company or a technology, if I were on the receiving end of those. Cowtowing to people in power and taking photos with hateful people is just an undignified behavior that is ultimately just noise.