diff --git a/.gitignore b/.gitignore
index 0259fac66b0b7548e2be10041078da478411c0e5..69a42dbf9189e2621f82fbd6420a4e9db962becd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,8 @@
 /node_modules
 /config.js
-/npm-debug.log
 /coverage
 /dist
+/tmp
 .DS_Store
-*.log
+.jest-cache
+/*.log
diff --git a/.npmignore b/.npmignore
index 6ada11d8a7c782c9fef7eec4f944e6915eef3075..6331739ccf3c4ed6fa71afd4a564469c326cfef9 100644
--- a/.npmignore
+++ b/.npmignore
@@ -1,5 +1,6 @@
 /bin
 /coverage
+/docs
 /test
 node_modules
 .DS_Store
@@ -7,6 +8,7 @@ node_modules
 .eslintrc.js
 .gitattributes
 .gitignore
+.jest-cache
 circle.yml
 config.js
 npm-debug.log
diff --git a/circle.yml b/circle.yml
index d8629193fcac715fccd9d69a173a89c8cbe9a3a0..2600ea176ff3e408c04b0dfb260f9b666b7c0398 100644
--- a/circle.yml
+++ b/circle.yml
@@ -12,6 +12,7 @@ dependencies:
   override:
     - yarn install --frozen-lockfile
   cache_directories:
+    - .jest-cache
     - ~/.cache/yarn
     - ~/.yarn
 
diff --git a/package.json b/package.json
index 1cc2847cfbe963cc52a88f8fa7f80f5024f40506..7f2b4122fa2c4f57ec74f67b84fa4d9ffad99c1b 100644
--- a/package.json
+++ b/package.json
@@ -91,6 +91,7 @@
     ]
   },
   "jest": {
+    "cacheDirectory": ".jest-cache",
     "coverageDirectory": "./coverage",
     "collectCoverage": true,
     "collectCoverageFrom": [