Some (potentially) useful Python libraries.
https://github.com/tartiflette/tartiflette “GraphQL Engine built with Python 3.6+ / asyncio”
See also: https://github.com/sfermigier/awesome-python-web-frameworks
Serialization / deserialization¶
Currently using Marshmallow.
Not a fan of Pydantic.
HTML / XML generation¶
- https://www.dynaconf.com/ “Configuration Management for Python.”
- or: https://typed-settings.readthedocs.io/
- Or: https://github.com/zifeo/dataconf
https://pypi.org/project/lark/ “Lark is a modern general-purpose parsing library for Python.” (LALR(1), Earley parsing)
https://github.com/dabeaz/sly “Lex + YACC in Python” (When you already have a YACC grammar for a language).
Were currently using:
- Flake8 + additional plugins (Bandit…)
See Project templates for how to set up these tools properly.
Some additional resources:
- https://pypi.org/project/devtools/ “Python’s missing debug print command and other development tools.” (Detailed discussion Python debug tools).
- https://pypi.org/project/stdeb/ “produces Debian source packages from Python packages”
- https://pypi.org/project/hupper/ “hupper is an integrated process monitor that will track changes to any imported Python files in sys.modules as well as custom paths. When files are changed the process is restarted.”
Currently using Fire because it’s the simplest one.
- https://github.com/google/python-fire “Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object.”
Other useful libraries include Click and Typer.
- https://pypi.org/project/py-healthcheck/ (Adds healthcheck endpoints to Flask or Tornado apps)