Our Python style has evolved over many years. We have always emphasised readability, and ease of code review with lower levels of diff-noise. Newer Python codebases at Thread use the Black code formatter, but some still use this style guide as there are aspects of our style that we depend on which are not yet supported by Black.
This guide covers our design principles for the public Thread GraphQL API – how we design the schema to encourage correct usage, how we future-proof the API, and how we decouple the server and the clients to enable painless iteration on both sides.
We have a large Django codebase and have evolved a style guide to encourage scalable practices between many developers.