Python

With only a few exceptions, Smarter Framework is implemented in Python. There are certain conventions and best practices that we’ve adopted, and want to impress upon future contributors to the project.

Coding Style

Type Hinting

Smarter Framework uses Python type hinting extensively throughout the codebase. This helps improve code readability, provides better support for IDEs, and enables static type checking with tools like mypy.

Documentation

See the Documentation Style Guide.

Dependencies

Smarter Framework relies on a number of third-party Python packages to provide various functionalities. These are maintained in the smarter/requirements/in directory of the project, with separate files for different environments and use cases.

Dependabot Configuration for Python Dependencies