Lancetnik / FastDepends

FastDepends - FastAPI Dependency Injection system extracted from FastAPI and cleared of all HTTP logic. Async and sync modes are both supported.
https://lancetnik.github.io/FastDepends/
MIT License
319 stars 14 forks source link

Replacement for python-dependency-injector #65

Open theobouwman opened 10 months ago

theobouwman commented 10 months ago

Hi,

We are using https://github.com/ets-labs/python-dependency-injector with our fastapi api, consisting of a repository/service pattern. Since with that library the async ability of fastapi is not possible and the fact that the library is not maintained anymore, we are looking for an alternatieve.

Would implementing a repisitory/service pattern with FastDepends be possible, and allow for async non blocking Datbase calls?

Thanks. Btw FastStreams looking really nice too!

Lancetnik commented 10 months ago

@theobouwman thanks for such glad feedback! For now FastDepends is not a real DI system, but a serizliation/Depends providing tool to build FastAPI-like tools. I am targeting to make it really-DI, but not in the nearest future, so you can take a look at some alternatives: like di or dishka (I know the developer and the tool looks promising)

theobouwman commented 9 months ago

Thanks

aKardasz commented 1 month ago

What would you say is missing from this being a dependency framework?

Can't you theoretically just create a class with injects and utilize those in a similar manner to other di frameworks?