diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..f5825f3724261fd1d92f642da9de52e972e9b1a2
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,70 @@
+################
+# GitLabCI template for Drupal projects.
+#
+# This template is designed to give any Contrib maintainer everything they need to test, without requiring modification.
+# It is also designed to keep up to date with Core Development automatically through the use of include files that can be centrally maintained.
+# As long as you include the project, ref and three files below, any future updates added by the Drupal Association will be used in your
+# pipelines automatically. However, you can modify this template if you have additional needs for your project.
+# The full documentation is on https://project.pages.drupalcode.org/gitlab_templates/
+################
+
+# For information on alternative values for 'ref' see https://project.pages.drupalcode.org/gitlab_templates/info/templates-version/
+# To test a Drupal 7 project, change the first include filename from .main.yml to .main-d7.yml
+include:
+  - project: $_GITLAB_TEMPLATES_REPO
+    ref: $_GITLAB_TEMPLATES_REF
+    file:
+      - "/includes/include.drupalci.main.yml"
+      - "/includes/include.drupalci.variables.yml"
+      - "/includes/include.drupalci.workflows.yml"
+
+################
+# Pipeline configuration variables are defined with default values and descriptions in the file
+# https://git.drupalcode.org/project/gitlab_templates/-/blob/main/includes/include.drupalci.variables.yml
+# Uncomment the lines below if you want to override any of the variables. The following is just an example.
+################
+# variables:
+#   SKIP_ESLINT: '1'
+#   OPT_IN_TEST_NEXT_MAJOR: '1'
+#   _CURL_TEMPLATES_REF: 'main'
+
+################
+# Google Calendar Service: Pipeline configuration variables and custom jobs, mostly:
+#  - Require jobs to pass: CSpell, PHPCS, PHPSTAN and Stylelint.
+################
+
+variables:
+  # Broaden test coverage.
+  OPT_IN_TEST_PREVIOUS_MAJOR: 1
+  OPT_IN_TEST_MAX_PHP: 1
+  OPT_IN_TEST_PREVIOUS_MINOR: 1
+  OPT_IN_TEST_NEXT_MINOR: 0
+  OPT_IN_TEST_NEXT_MAJOR: 1
+
+#
+# CSpell overrides and configuration.
+#
+cspell:
+  # Require spellcheck to pass.
+  allow_failure: true
+
+#
+# PHPCS overrides and configuration.
+#
+phpcs:
+  # Require phpcs to pass.
+  allow_failure: true
+
+#
+# PHPSTAN overrides and configuration.
+#
+phpstan:
+  # Require phpstan to pass.
+  allow_failure: true
+
+#
+# Stylelint overrides and configuration.
+#
+stylelint:
+  # Require stylelint to pass.
+  allow_failure: true