Why is QuartSchema a Class not a function? ========================================== The ``QuartSchema`` object is a class rather than a function, despite having no state. To me this is an odd choice as it would be better as a function. It is also something I've avoided doing elsewhere e.g. for Quart-CORS. ``QuartSchema`` alters the Quart app instance passed to it by changing the Websocket class type, the json encoder, and more. This is something that I worry could surprise users. Therefore I've followed the Flask extension standard by making it a class with an ``init_app`` method. My hope is that this better communicates to users that QuartSchema makes alterations, as is common in Flask extensions.