Recently I've been working on a new Python-based project, using Python 3.6.

Having the opportunity for a fresh start, I spent some time taking a look at how to best make use of the the modern tools for project setup, testing, static checking and so on, and how to …