diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e960e8643b2d2dcdb7170684ed6c7e32e0bfe3fd..be19655040e58ee3a9f2af912eb0af957821cacc 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -86,6 +86,7 @@ tests:
   stage: tests
   script:
     - npm i
+    - npm run format:check
     - npm test
     # Push coverage to GitLab pages
     - tar cvzf coverage.tar.gz coverage/
diff --git a/app/modules/crawler/lib/sync/Watcher.ts b/app/modules/crawler/lib/sync/Watcher.ts
index c0cfac51f5bc82794be012d856c30872c960081c..b7e663dac1e47fbe1798e581d4eac56351b94a96 100644
--- a/app/modules/crawler/lib/sync/Watcher.ts
+++ b/app/modules/crawler/lib/sync/Watcher.ts
@@ -265,7 +265,13 @@ export class MultimeterWatcher implements Watcher {
     if (duration) {
       const durationSecs = Math.floor(duration / 1000);
       const durationMillisRemain = duration % 1000;
-      this.multi.write("\nAll done in " + durationSecs + "." + durationMillisRemain + " seconds.\n");
+      this.multi.write(
+        "\nAll done in " +
+          durationSecs +
+          "." +
+          durationMillisRemain +
+          " seconds.\n"
+      );
     } else {
       this.multi.write("\nAll done.\n");
     }
diff --git a/format.sh b/format.sh
new file mode 100755
index 0000000000000000000000000000000000000000..eb54ab98b909362664f61801fa2b4e7be9a71f0f
--- /dev/null
+++ b/format.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+if [ "${1}" = "check" ]
+then
+    $HOME/.cargo/bin/cargo fmt -- --check && prettier --list-different "app/**/*.{ts,json}"
+elif [ "${1}" = "all" ]
+then
+    $HOME/.cargo/bin/cargo fmt && prettier --write "app/**/*.{ts,json}"
+else
+    echo  "first argument must be \"check\" or \"all\"."
+fi
diff --git a/package.json b/package.json
index 22617b1624c4a2c1122bd9b72b994315da222acb..a6691a25621d1aecb0bb7b3193e354123ff109d3 100644
--- a/package.json
+++ b/package.json
@@ -36,8 +36,8 @@
     "install": "./neon/build.sh",
     "lint": "lint-staged",
     "prettier": "prettier --write app/**/*/*.ts",
-    "format:check": "prettier --list-different \"app/**/*.{ts,json}\"",
-    "format:all": "prettier --write \"app/**/*.{ts,json}\""
+    "format:check": "./format.sh check",
+    "format:all": "./format.sh all"
   },
   "nyc": {
     "require": [