diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..fcf366dbf8e49876958323f49846b099948cdb05
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,54 @@
+# vim:ff=unix ts=2 sw=2 ai expandtab
+---
+repos:
+  - repo: https://github.com/pre-commit/pre-commit-hooks
+    rev: v2.5.0
+    hooks:
+      - id: check-added-large-files
+      - id: check-executables-have-shebangs
+      - id: check-merge-conflict
+      - id: check-symlinks
+      - id: detect-private-key
+      - id: trailing-whitespace
+      - id: requirements-txt-fixer
+  - repo: https://github.com/adrienverge/yamllint
+    rev: v1.20.0
+    hooks:
+      - id: yamllint
+  - repo: https://github.com/amperser/proselint/
+    rev: 0.10.2
+    hooks:
+      - id: proselint
+        types: [plain-text]
+        exclude: LICENSE
+  - repo: https://github.com/ambv/black
+    rev: 19.10b0
+    hooks:
+      - id: black
+        exclude: &excluded_pythonscripts pythonrc.py|rabbitmqadmin
+        args:
+          - |
+              --line-length=79
+  - repo: https://gitlab.com/pycqa/flake8
+    rev: 3.7.9
+    hooks:
+      - id: flake8
+        exclude: *excluded_pythonscripts
+        args:
+          - |-
+            --max-line-length=79
+        additional_dependencies:
+          - flake8-bugbear
+  - repo: https://github.com/pre-commit/mirrors-pylint
+    rev: v2.4.4
+    hooks:
+      - id: pylint
+        exclude: *excluded_pythonscripts
+        args:
+          - |-
+            --disable=R0801
+  - repo: https://www.shore.co.il/git/docker-pre-commit
+    rev: v0.3.0
+    hooks:
+      - id: hadolint
+      - id: docker-compose
diff --git a/docker-compose.yml b/docker-compose.yml
index d6a0570310e88172980a9d0f157565a6312e1e42..6047329a6edc46368e1a7c9ef8b37ccc08c69a08 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -14,4 +14,3 @@ services:
     image: rabbitmq:3.8-management-alpine
     ports:
       - 15672:15672
-
diff --git a/requirements.txt b/requirements.txt
index 4e156fb434754a1df4d83fd8281a552b9d9e72e8..468914aec8d570dab96d2d4f02311c669a65c7eb 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,2 +1,2 @@
-flask>=1.1
 celery[librabbitmq]>=4.4
+flask>=1.1