the middleware has been available for awhile, they just added a few "advanced" features it looks like.
The problem with their middleware is that it's based on their edge runtime. Which is pretty much very basic web APIs and nothing more. Unlike Express/Koa, you do not have the full node API and cannot do things like read files from the filesystem. It's a total unnecessary clusterfuck just so Vercel can get you on their cloud services. Every single day I work with Next.js I wish I had Express and a decent router.
Maybe this can help you too: https://github.com/fastify/fastify-nextjs
The only drawback is the slow startup time of next.js, which becomes really annoying with huge next.js projects. But for smaller projects, fastify-nextjs is fine.
[1] https://stackblitz.com/edit/github-mwzv1t?file=README.md