diff --git a/.eslintrc.js b/.eslintrc.js
new file mode 100644
index 0000000..29e21df
--- /dev/null
+++ b/.eslintrc.js
@@ -0,0 +1,21 @@
+module.exports = {
+  env: {
+    browser: true,
+    es6: true,
+    node: true,
+    jest: true,
+  },
+  parser: 'babel-eslint',
+  extends: ['eslint:recommended'],
+  globals: {
+    Atomics: 'readonly',
+    SharedArrayBuffer: 'readonly',
+  },
+  rules: {
+    'no-undef': ['warn'],
+    eqeqeq: ['warn', 'smart'],
+    'no-unused-vars': 'off',
+    'no-prototype-builtins': 'off',
+    'id-length': ['error', { exceptions: ['x'] }],
+  },
+}
diff --git a/.prettierrc.js b/.prettierrc.js
new file mode 100644
index 0000000..d0c6251
--- /dev/null
+++ b/.prettierrc.js
@@ -0,0 +1,7 @@
+module.exports = {
+  trailingComma: 'es5',
+  tabWidth: 2,
+  semi: false,
+  singleQuote: true,
+  arrowParens: 'always',
+}