I'm building Ditto — it clones websites with 100% visual accuracy and outputs a proper React app with named components and preserved structure.
The problem: you find a design you love, want to use it as a starting point, and your options are either manually recreating it or using a tool that spits out a tangled mess of divs and inline styles. CatchDitto gives you an actual codebase — clean component hierarchy, sensible naming, structure you can extend without wanting to rewrite everything first.
I'm still iterating, would love to hear what others think.
Reading through all these comments gives me hope. Finally people are speaking up about what we have all been experiencing in isolation — the gradual enshittification of Vercel/Next.js in service of Vercel's business model.
The middleware issues the OP describes are not bugs, they are symptoms. When you can't get basic logging to work, when you can't use WebSockets, when you are forced to deploy on edge runtimes that don't support Node.js APIs — these are all deliberate choices to push you toward Vercel's platform. Guillermo and his team have prioritized their cap table over the open web.
This is why I started https://github.com/openuiai/next.js last month. The web is humanity's greatest collaborative achievement. We are building toward a global, decentralized network that should enable unrestricted computation and storage for everyone. And for that to actually happen, we need frameworks with the power and flexibility that Next.js used to have. But instead we are all watching Vercel carve it up to lock developers into their platform
Next.js used to be great. Now it's a trojan horse for vendor lock-in. The fact that so many developers are comparing it to SharePoint and Lotus Notes should be a wake-up call.
To everyone frustrated: you are not wrong. The framework is ACTIVELY working against you unless you are on Vercel.
I'm working on OpenNext.js every single day — still climbing the learning curve of the massive spaghetti codebase, but fully committed. We are already running OpenUI on a fork with full Node.js middleware support and native WebSockets. These will merge into OpenNext.js once I have properly cleaned out the cruft (their CI/CD alone has cost me $400 just figuring out how to untangle it). But I'm taking the time to do this right.
Guillermo: Vercel/Next.js shouldn't dictate where we can deploy. It should respect the open nature of the web. You know this, but you chose the money instead.
To be fair Next.js is just following the natural progression of what their product always has been: holding devs' hands in all things deployment at the expense of vendor lock-in. Being aware of Vercel's limitations is not about the open web, it just means you should be setting up servers yourself at this point.
I was talking to a fellow dev at the company I work at and he was extolling the virtues of one-click nextjs deployments. As the conversation progressed it turned out he'd never actually had to set up or manage his own servers and felt that it was a waste of time for him to learn.
It hurt my soul. I am considering linking this article, but i feel it may come across as aggressive.
It is unknown though what causes it to take 10 seconds to compile a route in dev mode after each change. They have a development environment guide[0] but it's all lies and doesn't actually work.
It's really sad what Next.js has become. I still use it, but I have to maintain my own fork with patches. The next.config.js file is an ugly escape hatch that lets you change default behavior for things that should be properly extensible instead of being hidden behind "feature flags" in the first place. Honestly, the framework is a solid D grade at this point — complete spaghetti code.
Sorry to hear, Adam! Know that this isn't about you — it's them. Unfortunately, we are all cogs in this capitalistic system where replacement isn't a matter of if, but when...
====
NOTE: This is a specialized role. Please apply only if you have proven experience with the required technologies. Candidates with clearly no experience in the specified technologies will be disregarded automatically.
====
We are looking for a highly experienced Senior QA Engineer to lead our testing initiatives. With our current test coverage being limited, we need someone proficient in Next.js 14 and Go. Experience with Django is a plus.
Key Responsibilities:
• Lead and implement testing strategies and initiatives.
• Develop and maintain test automation frameworks.
• Collaborate with development teams to ensure high-quality releases.
• Identify, document, and track bugs.
Requirements:
• Proven experience with Next.js 14 and Go.
• Familiarity with Django is a plus.
• Self-starter capable of working with minimal supervision.
• Strong analytical and problem-solving skills.
To apply please submit your resume and a brief cover letter detailing your experience with Next.js 14 and Go to iwanttobeaqaengineer@emailchaser.com.
Emailchaser.com is seeking a passionate and seasoned Front-End Engineer to join our team. The ideal candidate will have a strong focus on creating exceptional user interfaces and a deep knowledge of the MUI (v4 & v5) framework.
Requirements:
* Proven experience as a Front-End Engineer (minimum 5 years); * At least 6 months of hands-on experience with the MUI5 framework; * Proficiency in NextJS is a significant plus; * Deep understanding of web technologies: HTML, CSS, and JavaScript; * Excellent problem-solving skills and attention to detail; * Ability to work collaboratively in a team environment; * Passion for creating intuitive and visually appealing user interfaces. If you believe you are a good fit, please reach out to marcelo at domain name .com
I felt the need to talk about my experience with SerpAPI's hiring process because, quite frankly, it was no good.
First off, I was super excited when I applied at SerpAPI. I really wanted to be part of what you are building. I worked for 10 hours non-stop on the challenge you set up, even with my brother visiting after not seeing him for 2 years. But my excitement turned into confusion when I got no response - not once, but twice.
You mentioned "obvious red flags", which simply doesn't add up. Despite offering numerous referrals from past jobs and delivering work that is deserving of at least a reply, it feels as though I am being overlooked.
My conversations with others who have also applied to your organization reveal a similar experience of being disregarded. Respect and clear communication matter significantly to me, being neurodiverse, and while your attempts to keep things simple are acknowledged, these are not mere extras - they are fundamental. Companies such as Basecamp comprehend this need but my experiences suggest SerpAPI doesn't. Your silence paints a negative picture that contrasts with the image of SerpAPI you aspire.
I know you can make things better. Start by recognizing the hard work, and responding to applicants. We are not just forms on your website; we are individuals with genuine interest, deserving of respect. Also consider focusing more on candidates already deeply engaged with open-source.
> First off, I was super excited when I applied at SerpAPI. I really wanted to be part of what you are building. I worked for 10 hours non-stop on the challenge you set up, even with my brother visiting after not seeing him for 2 years. But my excitement turned into confusion when I got no response - not once, but twice.
Have you not received payment for the code challenge yet? Looking at our internal thread, we had issues with our bank with some tax information missing on your side (I know tax compliance is tricky), but I think it's fixed. Ping me if it's not the case. julien _at_ serpapi.com
> We are not just forms on your website
I am confused by that statement. There is no forms in our application, we only do emails. Can you point to what is the form you referring to? I dislike processes that require forms as well and we'll remove.
I'm building Ditto — it clones websites with 100% visual accuracy and outputs a proper React app with named components and preserved structure.
The problem: you find a design you love, want to use it as a starting point, and your options are either manually recreating it or using a tool that spits out a tangled mess of divs and inline styles. CatchDitto gives you an actual codebase — clean component hierarchy, sensible naming, structure you can extend without wanting to rewrite everything first.
I'm still iterating, would love to hear what others think.