diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..067fe868bd672b34f9f7c1889e07b6ed1717b00d
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,28 @@
+image: node:14.14.0-alpine
+variables:
+  PUBLIC_URL: /
+
+pages:
+  stage: build
+  script:
+    - npm ci
+    - npm run build
+    - rm ./public -rf
+    - mv ./build ./public
+    - cp ./public/index.html ./public/404.html
+  artifacts:
+    paths:
+      - public
+  rules:
+    - if: '$CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH'
+      when: never
+    - if: '$CI_COMMIT_TAG || $CI_COMMIT_BRANCH'
+
+build:
+  stage: build
+  only:
+    - merge_requests
+  script:
+    - npm ci
+    - npm run lint
+    - npm run build
\ No newline at end of file