diff --git a/.eslintrc.js b/.eslintrc.js
new file mode 100644
index 0000000000000000000000000000000000000000..90b36de04ac8bd4b9ceadb189ea3793a96c8c89c
--- /dev/null
+++ b/.eslintrc.js
@@ -0,0 +1,38 @@
+module.exports = {
+    "env": {
+        "commonjs": true,
+        "es6": true,
+        "node": true,
+        "browser":  true
+    },
+    "extends": "eslint:recommended",
+    "globals": {
+        "Atomics": "readonly",
+        "SharedArrayBuffer": "readonly"
+    },
+    "parserOptions": {
+        "ecmaVersion": 2018
+    },
+    "rules": {
+        "linebreak-style": [
+            "error",
+            "unix"
+        ],
+        "quotes": [
+            "warn",
+            "double"
+        ],
+        "semi": [
+            "error",
+            "always"
+        ],
+        "no-unused-vars" : ["warn"],
+        "no-console" : ["error", { allow: ["log", "warn", "error"] }],
+        "no-unused-vars": [
+          "error",
+          { "vars": "all", "args": "none" }
+        ],
+        "no-mixed-spaces-and-tabs": ["error", "smart-tabs"],
+        "valid-jsdoc": ["warn"]
+    }
+};