Flask was a framework that did it differently because it promoted the idea of you actually write library against no framework at all. You just try to write your library in a way that makes it work in an isolated way. And then later on, you make it an extension and then you bind your library as conveniently as possible for the framework you want to use it with. At this point, I think it's very irrelevant which framework you actually use because you can use pretty much all the functionality in the Python ecosystem in any of those frameworks.