--- a
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,27 @@
+exclude: '^tutorials/input'
+
+repos:
+-   repo: https://github.com/pre-commit/pre-commit-hooks
+    rev: v5.0.0
+    hooks:
+    -   id: check-yaml
+    -   id: end-of-file-fixer
+    -   id: trailing-whitespace
+-   repo: https://github.com/psf/black
+    rev: 24.10.0
+    hooks:
+    -   id: black
+-   repo: https://github.com/PyCQA/flake8
+    rev: 7.1.1
+    hooks:
+    -   id: flake8
+        exclude: ^tutorials
+-   repo: https://github.com/pre-commit/mirrors-mypy
+    rev: v1.12.1
+    hooks:
+    -   id: mypy
+        exclude: ^tutorials
+-   repo: https://github.com/PyCQA/isort
+    rev: 5.13.2
+    hooks:
+    -   id: isort