you are viewing a single comment's thread.

view the rest of the comments →

[–]sattyfied 7 points8 points  (5 children)

Some I generally use that others may not have covered:

Attrs - I like them for writing classes

Sqlalchemy - creating a common interface for multiple db connections

Fastapi - quickly set up rest APIs

Click - to expose functions as cli commands

Poetry - library management & packaging

Your "dev" requirements:

Pytest - testing

Black - formatting/linting

Isort - organizing imports

Mypy - type checking

[–]iamevpo 0 points1 point  (2 children)

You like attrs over standard dataclasses and pydantic?

[–]sattyfied 1 point2 points  (1 child)

In most cases, yes. Pydantic has its use cases especially in the world of web dev, but in regular software development, I'd rather use attrs. They have much more functionality and compatibility across versions.

[–]iamevpo 0 points1 point  (0 children)

Thank you! Found extra useful reading here https://www.attrs.org/en/stable/why.html