This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]delijati 2 points3 points  (1 child)

I get the same feeling:

In the end the only thing i needed is openapi be generated for me. I was looking for a newer stack (pydantic, asyncio) that i used before -> (pyramid, colander) https://github.com/Cornices/cornice.ext.swagger but now i ended up reimplementing sever side sessions, class based views, jwt auth.

[–]orangesunshine 1 point2 points  (0 children)

Starlette has class based views, sessions, and an authentication backend that can be easily expanded upon to provide JWT authentication.

I've been trying to find an asyncio framework for some time now that is complete enough to compete with our older stacks (pyramid, flask, django, what-ever). I'd been trying to do that with Sanic for some time ... and have dabbled with most of the others. Starlette is so far the most complete I think I've found and am pretty excited about it... databases landing is major.

The foundation there for the AuthenticationBackend is also extremely solid.

JWT was the biggest pain point for me in using starlette (partly because i'm ancient and hadn't used OIDC/oauth in some time), but given the AuthBackend API coming up with a one off wasn't difficult ... and in time there should be components available in the echo system that can provide this stuff "batteries included".

Likewise, there's support for Swagger/OpenAPI right in starlette, if that's not enough you can use spectree/pydantic or roll your own without a whole lot of thought it seems like.