I use cursor agent mode with claude on my NextJS frontend and Typescript GraphQL backend. It's a real, reasonably sized, production app that's a few years old (pre-ChatGPT).
I vibe code the vast majority features nowadays. I generally don't need to write a single line of code. It often makes some mistakes but the agent figures out that the tests fail, or it doesn't build, fixes it, and basically "one shots" it after it doing its thing.
Only occasionally I need to write a few lines of code or give it a hint when it gets stuck. But 99% of the code is written by cursor.