diff --git a/.eslintrc.js b/.eslintrc.js
index 5f7a610e60d5c9087adf9d2f8d110681c9f585b5_LmVzbGludHJjLmpz..78c1df237b67773e649da4bc37fc6230a80d14a4_LmVzbGludHJjLmpz 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -20,4 +20,17 @@
       },
     ],
   },
+  overrides: [
+    {
+      files: ["**/webpack.config.js", "**/.eslintrc.js"],
+      env: {
+        es6: false,
+        node: true,
+      },
+      rules: {
+        "@typescript-eslint/no-var-requires": 0,
+      },
+    },
+  ],
+  ignorePatterns: ["packages/*/dist/"],
 };
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..78c1df237b67773e649da4bc37fc6230a80d14a4_LmdpdGxhYi1jaS55bWw=
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,9 @@
+stages:
+    - checks
+
+eslint:
+    stage: checks
+    before_script:
+        - yarn
+    script:
+        - yarn lint
diff --git a/package.json b/package.json
index 5f7a610e60d5c9087adf9d2f8d110681c9f585b5_cGFja2FnZS5qc29u..78c1df237b67773e649da4bc37fc6230a80d14a4_cGFja2FnZS5qc29u 100644
--- a/package.json
+++ b/package.json
@@ -3,6 +3,9 @@
   "version": "0.0.1",
   "main": "index.js",
   "license": "MIT",
+  "scripts": {
+      "lint": "eslint packages"
+  },
   "workspaces": [
     "packages/demo",
     "packages/ra-cubicweb"