Why I won't use Next.js anymore ๐Ÿ˜ก

Why I won't use Next.js anymore ๐Ÿ˜ก

NextJs became popular because it was a easy way to build full stack apps, But after years of using it as default I have moved away from it. Here's why

ยท

2 min read

Warning: Rant ahead.

Problems

It has become too complex

Over time NextJs has introduced tons of complexity, with latest one being Server Actions. Learning curve is much higher now and going through NextJs documentation has become a herculean task. USP of simplicity is gone.

Too many breaking changes

Page router to app router has created so many problems. Like API level configs don't work anymore and now we need to learn about Server Actions to achieve this.

Customisation

Any use case which differs from what NextJs creators intended to do is simply painful. NextJs has decided that API requests can have 1Mb request body, I have an API which uses request body of > 1 Mb (passing a base64 image), achieving that has no good alternative.

Page router has some config options but app router doesn't or they are not documented. The only way to achieve it is either create a custom server (What's the point of NextJs then) or learn about Server Actions, which may or may not provide a solution.

At this point, you start wondering what was the problem with the simple express server.

My Conclusion

Any highly opinionated framework should be simple to work with, nobody wants something which is restrictive and needs a high learning curve. The only use cases someone should consider using NextJs is

  • Extreme need for Server Side Rendering

  • Hobby project with known and simple scope

ย