diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml
index 1ccfdf951803fa3adf3fd9412da679354a48d748..90c5dbc4124c0b55d55f96cfd278c4ad0939a3ba 100644
--- a/.github/workflows/linting.yaml
+++ b/.github/workflows/linting.yaml
@@ -26,10 +26,10 @@ jobs:
           #options: "--check --diff"
           #src: "."
           version: "22.3.0"
-      - name: Install flake8
+      - name: Install tools
         run: |
           python -m pip install --upgrade pip
-          pip install flake8
+          pip install flake8 pylint
           #if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
       - name: Lint with flake8
         run: |
@@ -38,3 +38,6 @@ jobs:
           flake8 .
           # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
           #flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
+      - name: Lint with pylint
+        run: |
+          pylint app *.py
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index e57ca6a18388c70750fec8604096506bf3fd897c..29e52b76e9305fcd7845eb1bd227e9d5a0eb842e 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -13,3 +13,7 @@ repos:
     rev: 4.0.1
     hooks:
       - id: flake8
+  - repo: https://github.com/PyCQA/pylint
+    rev: v2.13.8
+    hooks:
+      - id: pylint