Middleware does work with self-hosting[1]. It’s a more limited runtime that’s based on web standard APIs, which creates optionality for running it in high performance / resource constrained scenarios.
[1] https://nextjs.org/docs/app/building-your-application/deploy...
It _can_ work, but _won't_ for most real world workloads
Beyond the runtime limitations, it is poorly designed and requires you to effectively write a router when the rest of the system has automatic routing assembly
I'm calling this situation Fauxpen Source. The recent moves definitely feel anticompetitive or at least trying to force you into using their products
I'm migrating to vite+vike (next/nuxt like experience for any framework)