diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index ee35312179d7a3b6624f80ce58b993e8ebac56bf..3846840f9be03733b80bca3db4eccf99646c3654 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -11,6 +11,11 @@ repos:
           - 'flake8-copyright==0.2.2'
           - 'flake8-debugger==3.1.0'
           - 'flake8-quotes==3.3.2'
+  - repo: https://github.com/astral-sh/ruff-pre-commit
+    rev: v0.1.11
+    hooks:
+      - id: ruff
+        args: [--fix]
   - repo: https://github.com/pre-commit/pre-commit-hooks
     rev: v4.1.0
     hooks:
diff --git a/ruff.toml b/ruff.toml
new file mode 100644
index 0000000000000000000000000000000000000000..19c8e651c00aebb0d850456adbb6458217de995d
--- /dev/null
+++ b/ruff.toml
@@ -0,0 +1,9 @@
+line-length = 120
+
+[format]
+# Like Black, use double quotes for strings.
+quote-style = "double"
+
+[lint]
+select = ["Q0"]
+ignore = ["F", "E"]