I took a very similar approach when I made my first Node API over a decade ago. In the end, it got complicated pretty quickly. I actually really like the Koa/Oak approach myself.
When you get to the point of even several dozen routes, I can imagine the registration methods in TFA to become overly cumbersome to say the least.
Just my own $.02 on this.