diff --git a/doc/administration/get_started.md b/doc/administration/get_started.md
index 801576f0a4ab9976df67e9eb15be2675338578e7..6ffc28a58bc44e8397ebc18f9e53b8f2abb0e2bc 100644
--- a/doc/administration/get_started.md
+++ b/doc/administration/get_started.md
@@ -297,7 +297,7 @@ You can learn more about how to administer GitLab.
 
 ### Free GitLab training
 
-- GitLab basics: Discover self-service guides on [Git and GitLab basics](../tutorials/index.md).
+- GitLab basics: Discover self-service guides on [Git and GitLab basics](../tutorials/_index.md).
 - GitLab University: Learn new GitLab skills in a structured course at [GitLab University](https://university.gitlab.com/learn/dashboard).
 
 ### Third-party training
diff --git a/doc/ci/gitlab_google_cloud_integration/index.md b/doc/ci/gitlab_google_cloud_integration/index.md
index dc9bcd5b235fa817f5e49fbb07b9bb12610793bc..90aa13595d7f71b72e7270be5f92819d322068b6 100644
--- a/doc/ci/gitlab_google_cloud_integration/index.md
+++ b/doc/ci/gitlab_google_cloud_integration/index.md
@@ -11,7 +11,7 @@ DETAILS:
 
 Use the Google Cloud integration to use Google Cloud resources in GitLab projects.
 
-To get started, see [Set up the Google Cloud integration](../../tutorials/set_up_gitlab_google_integration/index.md).
+To get started, see [Set up the Google Cloud integration](../../tutorials/set_up_gitlab_google_integration/_index.md).
 
 - [Google Cloud workload identity federation and IAM](../../integration/google_cloud_iam.md)
 - [Google Artifact Management integration](../../user/project/integrations/google_artifact_management.md)
diff --git a/doc/ci/index.md b/doc/ci/index.md
index d7e67db9865287d61004bf589c17ebbe58966f9c..108c5af27f62c02abbf5b75d0cb7247d4393a4dd 100644
--- a/doc/ci/index.md
+++ b/doc/ci/index.md
@@ -56,7 +56,7 @@ If you don't use GitLab.com, you can:
 
 For more information, see:
 
-- [Create a runner on your local machine](../tutorials/create_register_first_runner/index.md)
+- [Create a runner on your local machine](../tutorials/create_register_first_runner/_index.md)
 - [More information about runners](https://docs.gitlab.com/runner/)
 
 ## Step 3: Define your pipelines
diff --git a/doc/ci/runners/new_creation_workflow.md b/doc/ci/runners/new_creation_workflow.md
index f9ef8299029ca954a61027f2761cbb1c5c0902bc..5546358903358582e1512107e887d651e0a0d866 100644
--- a/doc/ci/runners/new_creation_workflow.md
+++ b/doc/ci/runners/new_creation_workflow.md
@@ -158,7 +158,7 @@ or not reusable. If the runner configuration is static, you should reuse the run
 an existing runner.
 
 For instructions about how to automate runner creation and registration, see the tutorial,
-[Automate runner creation and registration](../../tutorials/automate_runner_creation/index.md).
+[Automate runner creation and registration](../../tutorials/automate_runner_creation/_index.md).
 
 ## Installing GitLab Runner with Helm chart
 
diff --git a/doc/ci/steps/index.md b/doc/ci/steps/index.md
index 31172ff941089942cd836f516951aa9ae23dd542..d839a5c1b3afd30f20e6bea9b74b053d98f1f0b6 100644
--- a/doc/ci/steps/index.md
+++ b/doc/ci/steps/index.md
@@ -14,7 +14,7 @@ Steps are reusable units of a job that when composed together replace the `scrip
 While you are not required to use steps, the reusability, composability, testability, and independence
 of steps make it easier to understand and maintain CI/CD pipeline.
 
-To get started, you can try the [Set up steps tutorial](../../tutorials/setup_steps/index.md).
+To get started, you can try the [Set up steps tutorial](../../tutorials/setup_steps/_index.md).
 To start creating your own steps, see [Creating your own step](#create-your-own-step). To understand how pipelines can benefit
 from using both CI/CD Components and CI/CD Steps, see [Combine CI/CD Components and CI/CD Steps](#combine-cicd-components-and-cicd-steps).
 
diff --git a/doc/development/documentation/topic_types/tutorial.md b/doc/development/documentation/topic_types/tutorial.md
index 86e54e96edb1515a46965f1514493e212743742d..2b2e8ef7654a67e80b1e217a334b24ea8315d934 100644
--- a/doc/development/documentation/topic_types/tutorial.md
+++ b/doc/development/documentation/topic_types/tutorial.md
@@ -33,7 +33,7 @@ For tutorial Markdown files, you can either:
 
 In the left nav, add the tutorial near the relevant feature documentation.
 
-Add a link to the tutorial on one of the [tutorial pages](../../../tutorials/index.md).
+Add a link to the tutorial on one of the [tutorial pages](../../../tutorials/_index.md).
 
 ## Tutorial format
 
@@ -77,7 +77,7 @@ To do step 2:
 ```
 
 An example of a tutorial that follows this format is
-[Tutorial: Make your first Git commit](../../../tutorials/make_first_git_commit/index.md).
+[Tutorial: Make your first Git commit](../../../tutorials/make_first_git_commit/_index.md).
 
 ## Tutorial page title
 
@@ -87,7 +87,7 @@ In the left nav, use the full page title. Do not abbreviate it.
 Put the text in quotes so the pipeline succeeds. For example,
 `"Tutorial: Make your first Git commit"`.
 
-On [the **Learn GitLab with tutorials** page](../../../tutorials/index.md),
+On [the **Learn GitLab with tutorials** page](../../../tutorials/_index.md),
 do not use `Tutorial` in the title.
 
 ## Screenshots
diff --git a/doc/index.md b/doc/index.md
index 351ea8840706fdd0a021237c943d208b8a4949d6..a745a82b72490b67fc26501922f9358729269e45 100644
--- a/doc/index.md
+++ b/doc/index.md
@@ -22,7 +22,7 @@ Explore the different areas of the documentation:
 |                         |                         |
 |:------------------------|:------------------------|
 | [**Use GitLab**](user/index.md)<br>Get started with GitLab features and functionality. | [**Administer GitLab**](administration/index.md)<br/>Administer GitLab Self-Managed. |
-| [**New to Git and GitLab?**](tutorials/index.md)<br/>Start learning about Git and GitLab. | [**Contribute to GitLab development**](#contribute-to-gitlab)<br/>Create new GitLab functionality and documentation. |
+| [**New to Git and GitLab?**](tutorials/_index.md)<br/>Start learning about Git and GitLab. | [**Contribute to GitLab development**](#contribute-to-gitlab)<br/>Create new GitLab functionality and documentation. |
 | [**Coming to GitLab from another platform?**](#coming-to-gitlab-from-another-platform)<br/>Learn how to move to GitLab. | [**Build an integration with GitLab**](#build-an-integration-with-gitlab)<br/>Integrate with Jira and other common applications. |
 | [**Choose a subscription**](subscriptions/index.md)<br/>Determine which subscription tier makes sense for you. | [**Install GitLab**](install/_index.md)<br/>Install GitLab on different platforms. |
 | [**Reference architectures**](administration/reference_architectures/index.md)<br/>View recommended deployments at scale. | [**Upgrade GitLab**](update/_index.md)<br/>Upgrade your GitLab Self-Managed instance to the latest version. |
diff --git a/doc/topics/git/advanced.md b/doc/topics/git/advanced.md
index be3dcbb0f03d4a0d9d0dba8c7cb35b1cbbf83fd2..f743ee645ecf8c504c10f06d741396a4c6433186 100644
--- a/doc/topics/git/advanced.md
+++ b/doc/topics/git/advanced.md
@@ -31,7 +31,7 @@ When you use advanced Git operations, you should:
 
 - Create a backup or work on a [separate branch](branch.md).
 - Communicate with your team before when you use operations that affect shared branch history.
-- Use descriptive [commit messages](../../tutorials/update_commit_messages/index.md)
+- Use descriptive [commit messages](../../tutorials/update_commit_messages/_index.md)
   when you rewrite history.
 - Update your knowledge of Git to stay current with best practices and new features.
   For more information, see the [Git documentation](https://git-scm.com/docs).
@@ -99,7 +99,7 @@ Use this if:
 - Your organization moved your projects to a new GitLab instance with a new domain name.
 - The project was renamed to a new path in the same GitLab instance.
 
-For more information, see [Update Git remote URLs](../../tutorials/update_git_remote_url/index.md).
+For more information, see [Update Git remote URLs](../../tutorials/update_git_remote_url/_index.md).
 
 ## Related topics
 
diff --git a/doc/topics/git/get_started.md b/doc/topics/git/get_started.md
index f5dba49beb5ad85bcc0738d29fa9f02bd20bb365..e86b44eead5c84358e09ba00a6e44ac84ca387a0 100644
--- a/doc/topics/git/get_started.md
+++ b/doc/topics/git/get_started.md
@@ -154,4 +154,4 @@ GitLab provides a web-based interface for many Git operations, but you can also
 Git from the command line to interact with GitLab. This provides you with additional
 flexibility and control.
 
-For a hands-on approach to learning Git commands, see [Tutorial: Make your first Git commit](../../tutorials/make_first_git_commit/index.md). For other helpful resources, see [Tutorials: Learn Git](../../tutorials/learn_git.md).
+For a hands-on approach to learning Git commands, see [Tutorial: Make your first Git commit](../../tutorials/make_first_git_commit/_index.md). For other helpful resources, see [Tutorials: Learn Git](../../tutorials/learn_git.md).
diff --git a/doc/topics/plan_and_track.md b/doc/topics/plan_and_track.md
index aa724b5b3135e9e1612117119fb835ae0ce3718b..2f9931e74158e2fa68ad0ad514186b72d2b7b603 100644
--- a/doc/topics/plan_and_track.md
+++ b/doc/topics/plan_and_track.md
@@ -23,7 +23,7 @@ with [Scaled Agile Framework (SAFe)](https://handbook.gitlab.com/handbook/market
 
 | | | |
 |--|--|--|
-| [**Getting started**](../user/get_started/get_started_planning_work.md)<br>Overview of how features fit together. | [**Tutorial: Use GitLab for scrum**](../tutorials/scrum_events/index.md)<br>Sprints, backlog, user stories, scrum lifecycle. | [**Tutorial: Use GitLab for Kanban**](../tutorials/kanban/index.md)<br>Work in progress, flow, distribution. |
+| [**Getting started**](../user/get_started/get_started_planning_work.md)<br>Overview of how features fit together. | [**Tutorial: Use GitLab for scrum**](../tutorials/scrum_events/_index.md)<br>Sprints, backlog, user stories, scrum lifecycle. | [**Tutorial: Use GitLab for Kanban**](../tutorials/kanban/_index.md)<br>Work in progress, flow, distribution. |
 | [**Labels**](../user/project/labels.md)<br>Project labels, group labels, nested scopes, filtering. | [**Iterations**](../user/group/iterations/index.md)<br>Time-boxed workflow, program increments, cadence, sprints. | [**Milestones**](../user/project/milestones/index.md)<br>Burndown charts, goals, progress tracking, releases. |
 | [**Issues**](../user/project/issues/index.md)<br>Tasks, bug reports, feature requests, tracking. | [**Issue boards**](../user/project/issue_board.md)<br>Visualization, workflow, Kanban, prioritization. | [**Comments and threads**](../user/discussions/index.md)<br> Mentions, locked discussions, internal notes, thread resolution. |
 | [**Tasks**](../user/tasks.md)<br>Task labels, confidential tasks, linked items, task weights. | [**Requirements**](../user/project/requirements/index.md)<br>Acceptance criteria, requirements test reports, CSV import. | [**Time tracking**](../user/project/time_tracking.md)<br>Estimates, time spent, reporting. |
diff --git a/doc/topics/set_up_organization.md b/doc/topics/set_up_organization.md
index 7b32a7976eb2a2ef9a02d129acc8d1318ad38853..13bc26123363e91190f47c980411f2f5454b391f 100644
--- a/doc/topics/set_up_organization.md
+++ b/doc/topics/set_up_organization.md
@@ -11,7 +11,7 @@ and give everyone access to the projects they need.
 
 | | | |
 |--|--|--|
-| [**Tutorial: Set up your organization**](../tutorials/manage_user/index.md)<br>Setup, configuration, onboarding, organization structure. | [**Namespaces**](../user/namespace/index.md)<br>Organization, hierarchy, project grouping. | [**Members**](../user/project/members/index.md)<br>User management, roles, permissions, access levels. |
+| [**Tutorial: Set up your organization**](../tutorials/manage_user/_index.md)<br>Setup, configuration, onboarding, organization structure. | [**Namespaces**](../user/namespace/index.md)<br>Organization, hierarchy, project grouping. | [**Members**](../user/project/members/index.md)<br>User management, roles, permissions, access levels. |
 | [**Organization** (in development)](../user/organization/index.md)<br>Namespace hierarchy. | [**Groups**](../user/group/index.md)<br>Project management, access control, client groups, team groups. | [**Sharing projects and groups**](../user/project/members/sharing_projects_groups.md)<br>Invitations, group inheritance, project visibility. |
 | [**Compliance**](../administration/compliance.md)<br>Compliance center, audit events, security policies, compliance frameworks. | [**Enterprise users**](../user/enterprise_user/index.md)<br>Domain verification, two-factor authentication, enterprise user management, SAML response. | [**Service accounts**](../user/profile/service_accounts.md)<br>Machine user, rate limits, personal access tokens. |
 | [**User account options**](../user/profile/index.md)<br>Profile settings, preferences, authentication, notifications. | [**SSH keys**](../user/ssh.md)<br>Authentication, permissions, key types, ownership. | [**GitLab.com settings**](../user/gitlab_com/index.md)<br>Instance configurations. |
diff --git a/doc/tutorials/index.md b/doc/tutorials/_index.md
similarity index 100%
rename from doc/tutorials/index.md
rename to doc/tutorials/_index.md
diff --git a/doc/tutorials/agile_sprint/index.md b/doc/tutorials/agile_sprint/_index.md
similarity index 100%
rename from doc/tutorials/agile_sprint/index.md
rename to doc/tutorials/agile_sprint/_index.md
diff --git a/doc/tutorials/automate_runner_creation/index.md b/doc/tutorials/automate_runner_creation/_index.md
similarity index 100%
rename from doc/tutorials/automate_runner_creation/index.md
rename to doc/tutorials/automate_runner_creation/_index.md
diff --git a/doc/tutorials/boards_for_standups/index.md b/doc/tutorials/boards_for_standups/_index.md
similarity index 100%
rename from doc/tutorials/boards_for_standups/index.md
rename to doc/tutorials/boards_for_standups/_index.md
diff --git a/doc/tutorials/boards_for_teams/index.md b/doc/tutorials/boards_for_teams/_index.md
similarity index 100%
rename from doc/tutorials/boards_for_teams/index.md
rename to doc/tutorials/boards_for_teams/_index.md
diff --git a/doc/tutorials/build_application.md b/doc/tutorials/build_application.md
index 70d3565166eadb7a3178e6a884a38fc707562ef8..862c316468b64e45dbab9d1b08a73cd940f89471 100644
--- a/doc/tutorials/build_application.md
+++ b/doc/tutorials/build_application.md
@@ -18,13 +18,13 @@ Use CI/CD pipelines to automatically build, test, and deploy your code.
 | [GitLab CI Fundamentals](https://university.gitlab.com/learn/learning-path/gitlab-ci-fundamentals) | Learn about GitLab CI/CD and build a pipeline in this self-paced course. | **{star}** |
 | <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> [CI deep dive](https://www.youtube.com/watch?v=ZVUbmVac-m8&list=PL05JrBw4t0KorkxIFgZGnzzxjZRCGROt_&index=27) (22m 51s) | Take a closer look at pipelines and continuous integration concepts. | |
 | [Set up CI/CD in the cloud](../ci/examples/index.md#cicd-in-the-cloud) | Learn how to set up CI/CD in different cloud-based environments. | |
-| [Create a GitLab pipeline to push to Google Artifact Registry](create_gitlab_pipeline_push_to_google_artifact_registry/index.md)  | Learn how to connect GitLab to Google Cloud and create a pipeline to push images to Artifact Registry. | |
+| [Create a GitLab pipeline to push to Google Artifact Registry](create_gitlab_pipeline_push_to_google_artifact_registry/_index.md) | Learn how to connect GitLab to Google Cloud and create a pipeline to push images to Artifact Registry. | |
 | [Find CI/CD examples and templates](../ci/examples/index.md#cicd-examples)  | Use these examples and templates to set up CI/CD for your use case. | |
 | <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> [Understand CI/CD rules](https://www.youtube.com/watch?v=QjQc-zeL16Q) (8m 56s) |  Learn more about how to use CI/CD rules. | |
 | [Use Auto DevOps to deploy an application](../topics/autodevops/cloud_deployments/auto_devops_with_gke.md)  | Deploy an application to Google Kubernetes Engine (GKE). | |
 | [Using Buildah in a rootless container with GitLab Runner Operator on OpenShift](../ci/docker/buildah_rootless_tutorial.md)  | Learn how to set up GitLab Runner Operator on OpenShift to build Docker images with Buildah in a rootless container | |
 | [Automatically build and publish packages with CI/CD](../user/packages/pypi_repository/auto_publish_tutorial.md) | Learn how to automatically build, test, and publish a PyPI package to the package registry. | |
-| [Set up CI/CD steps](setup_steps/index.md)  | Learn how to set up the steps component and configure a CI/CD pipeline to use the step in a job. | |
+| [Set up CI/CD steps](setup_steps/_index.md)  | Learn how to set up the steps component and configure a CI/CD pipeline to use the step in a job. | |
 
 ## Configure GitLab Runner
 
@@ -32,10 +32,10 @@ Set up runners to run jobs in a pipeline.
 
 | Topic | Description | Good for beginners |
 |-------|-------------|--------------------|
-| [Create, register, and run your own project runner](create_register_first_runner/index.md) | Learn the basics of how to create and register a project runner that runs jobs for your project. | **{star}** |
-| [Configure GitLab Runner to use the Google Kubernetes Engine](configure_gitlab_runner_to_use_gke/index.md) | Learn how to configure GitLab Runner to use the GKE to run jobs. | |
-| [Automate runner creation and registration](automate_runner_creation/index.md) | Learn how to automate runner creation as an authenticated user to optimize your runner fleet.  | |
-| [Set up the Google Cloud integration](set_up_gitlab_google_integration/index.md) | Learn how to integrate Google Cloud with GitLab and set up GitLab Runner to run jobs on Google Cloud.  | |
+| [Create, register, and run your own project runner](create_register_first_runner/_index.md) | Learn the basics of how to create and register a project runner that runs jobs for your project. | **{star}** |
+| [Configure GitLab Runner to use the Google Kubernetes Engine](configure_gitlab_runner_to_use_gke/_index.md) | Learn how to configure GitLab Runner to use the GKE to run jobs. | |
+| [Automate runner creation and registration](automate_runner_creation/_index.md) | Learn how to automate runner creation as an authenticated user to optimize your runner fleet.  | |
+| [Set up the Google Cloud integration](set_up_gitlab_google_integration/_index.md) | Learn how to integrate Google Cloud with GitLab and set up GitLab Runner to run jobs on Google Cloud.  | |
 
 ## Publish a static website
 
@@ -45,4 +45,4 @@ Use GitLab Pages to publish a static website directly from your project.
 |-------|-------------|--------------------|
 | [Create a Pages website from a CI/CD template](../user/project/pages/getting_started/pages_ci_cd_template.md) | Quickly generate a Pages website for your project using a CI/CD template for a popular Static Site Generator (SSG). | **{star}** |
 | [Create a Pages website from scratch](../user/project/pages/getting_started/pages_from_scratch.md) | Create all the components of a Pages website from a blank project. | |
-| [Build, test, and deploy your Hugo site with GitLab](hugo/index.md) | Generate your Hugo site using a CI/CD template and GitLab Pages. | **{star}** |
+| [Build, test, and deploy your Hugo site with GitLab](hugo/_index.md) | Generate your Hugo site using a CI/CD template and GitLab Pages. | **{star}** |
diff --git a/doc/tutorials/compliance_pipeline/index.md b/doc/tutorials/compliance_pipeline/_index.md
similarity index 100%
rename from doc/tutorials/compliance_pipeline/index.md
rename to doc/tutorials/compliance_pipeline/_index.md
diff --git a/doc/tutorials/configure_gitlab_runner_to_use_gke/index.md b/doc/tutorials/configure_gitlab_runner_to_use_gke/_index.md
similarity index 100%
rename from doc/tutorials/configure_gitlab_runner_to_use_gke/index.md
rename to doc/tutorials/configure_gitlab_runner_to_use_gke/_index.md
diff --git a/doc/tutorials/container_scanning/index.md b/doc/tutorials/container_scanning/_index.md
similarity index 100%
rename from doc/tutorials/container_scanning/index.md
rename to doc/tutorials/container_scanning/_index.md
diff --git a/doc/tutorials/convert_personal_namespace_to_group/index.md b/doc/tutorials/convert_personal_namespace_to_group/_index.md
similarity index 98%
rename from doc/tutorials/convert_personal_namespace_to_group/index.md
rename to doc/tutorials/convert_personal_namespace_to_group/_index.md
index c4c25c357834add626f3f507601ce24b9ce10349..08ba561284c706349d758a92143605118fbcbfab 100644
--- a/doc/tutorials/convert_personal_namespace_to_group/index.md
+++ b/doc/tutorials/convert_personal_namespace_to_group/_index.md
@@ -15,7 +15,7 @@ With a group namespace, you can create multiple subgroups and manage their membe
 
 You don't have to start from scratch. You can create a new group
 and move your existing projects to the group to get the added benefits.
-To find out how, see [Tutorial: Move your personal project to a group](../move_personal_project_to_group/index.md).
+To find out how, see [Tutorial: Move your personal project to a group](../move_personal_project_to_group/_index.md).
 
 You can also go one step further and convert your personal namespace into a group namespace.
 Converting your namespace lets you keep the existing username and URL. For example, if your
diff --git a/doc/tutorials/create_and_deploy_web_service_with_google_cloud_run_component/index.md b/doc/tutorials/create_and_deploy_web_service_with_google_cloud_run_component/_index.md
similarity index 99%
rename from doc/tutorials/create_and_deploy_web_service_with_google_cloud_run_component/index.md
rename to doc/tutorials/create_and_deploy_web_service_with_google_cloud_run_component/_index.md
index 4d8f469ff72bca20b3dc67fee671a78cca834a7a..a629f4d4db24aba4d72ba15c1e39054a2ca3ff2c 100644
--- a/doc/tutorials/create_and_deploy_web_service_with_google_cloud_run_component/index.md
+++ b/doc/tutorials/create_and_deploy_web_service_with_google_cloud_run_component/_index.md
@@ -9,7 +9,7 @@ Learn how to use the [Google Cloud Run component](https://gitlab.com/google-gitl
 
 ## Before you begin
 
-1. Follow the instructions in [Set up the Google Cloud integration](../set_up_gitlab_google_integration/index.md) to:
+1. Follow the instructions in [Set up the Google Cloud integration](../set_up_gitlab_google_integration/_index.md) to:
 
    - Set up Google Cloud IAM.
    - Connect GitLab to Google Artifact Registry.
diff --git a/doc/tutorials/create_gitlab_pipeline_push_to_google_artifact_registry/index.md b/doc/tutorials/create_gitlab_pipeline_push_to_google_artifact_registry/_index.md
similarity index 98%
rename from doc/tutorials/create_gitlab_pipeline_push_to_google_artifact_registry/index.md
rename to doc/tutorials/create_gitlab_pipeline_push_to_google_artifact_registry/_index.md
index ad46c02896ce7047694b5b23bb275a258565496d..c821466774fe9b699102010683cb84e0b137ff1e 100644
--- a/doc/tutorials/create_gitlab_pipeline_push_to_google_artifact_registry/index.md
+++ b/doc/tutorials/create_gitlab_pipeline_push_to_google_artifact_registry/_index.md
@@ -94,7 +94,7 @@ autoscaling fleet of runners on Compute Engine, with a runner manager that
 creates temporary runners to execute multiple jobs simultaneously.
 
 To set up your autoscaling fleet of runners, follow the instructions in
-[Set up GitLab Runner to execute your CI/CD jobs on Google Cloud](../set_up_gitlab_google_integration/index.md#set-up-gitlab-runner-to-execute-your-cicd-jobs-on-google-cloud).
+[Set up GitLab Runner to execute your CI/CD jobs on Google Cloud](../set_up_gitlab_google_integration/_index.md#set-up-gitlab-runner-to-execute-your-cicd-jobs-on-google-cloud).
 Select Google Cloud as the environment where you want your runners to execute
 your CI/CD jobs, and fill out the rest of the configuration details.
 
diff --git a/doc/tutorials/create_register_first_runner/index.md b/doc/tutorials/create_register_first_runner/_index.md
similarity index 100%
rename from doc/tutorials/create_register_first_runner/index.md
rename to doc/tutorials/create_register_first_runner/_index.md
diff --git a/doc/tutorials/fuzz_testing/index.md b/doc/tutorials/fuzz_testing/_index.md
similarity index 100%
rename from doc/tutorials/fuzz_testing/index.md
rename to doc/tutorials/fuzz_testing/_index.md
diff --git a/doc/tutorials/gitlab_navigation.md b/doc/tutorials/gitlab_navigation.md
index f4ef00d8a70100eed00a5337b194626a25e9cddd..738a7ee008330a743ebc25a3a7a0d91f2a29421f 100644
--- a/doc/tutorials/gitlab_navigation.md
+++ b/doc/tutorials/gitlab_navigation.md
@@ -13,7 +13,7 @@ and running quickly.
 |-------|-------------|--------------------|
 | [GitLab with Git Essentials](https://university.gitlab.com/courses/gitlab-with-git-essentials-s2)  |  Learn the basics of Git and GitLab in this self-paced course. | **{star}** |
 | <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> [Use GitLab for DevOps](https://www.youtube.com/watch?v=7q9Y1Cv-ib0) (12m 34s) | Use GitLab through the entire DevOps lifecycle, from planning to monitoring. | **{star}** |
-| [Use the left sidebar to navigate GitLab](left_sidebar/index.md) |  Start navigating the GitLab UI. | **{star}** |
+| [Use the left sidebar to navigate GitLab](left_sidebar/_index.md) |  Start navigating the GitLab UI. | **{star}** |
 | [Use Markdown at GitLab](../user/markdown.md) |  GitLab Flavored Markdown (GLFM) is used in many areas of GitLab, for example, in merge requests. | **{star}** |
 | <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> [GitLab Continuous Delivery overview](https://www.youtube.com/watch?v=M7rBDZYsx8U&list=PLFGfElNsQthYDx0A_FaNNfUm9NHsK6zED&index=193) (17m 2s) | Learn how to use GitLab features to continuously build, test, and deploy iterative code changes. | |
 | [Productivity tips](https://about.gitlab.com/blog/2021/02/18/improve-your-gitlab-productivity-with-these-10-tips/) | Get tips to help make you a productive GitLab user. | |
diff --git a/doc/tutorials/hugo/index.md b/doc/tutorials/hugo/_index.md
similarity index 100%
rename from doc/tutorials/hugo/index.md
rename to doc/tutorials/hugo/_index.md
diff --git a/doc/tutorials/idea_management/index.md b/doc/tutorials/idea_management/_index.md
similarity index 100%
rename from doc/tutorials/idea_management/index.md
rename to doc/tutorials/idea_management/_index.md
diff --git a/doc/tutorials/install_gitlab_single_node/index.md b/doc/tutorials/install_gitlab_single_node/_index.md
similarity index 100%
rename from doc/tutorials/install_gitlab_single_node/index.md
rename to doc/tutorials/install_gitlab_single_node/_index.md
diff --git a/doc/tutorials/issue_triage/index.md b/doc/tutorials/issue_triage/_index.md
similarity index 99%
rename from doc/tutorials/issue_triage/index.md
rename to doc/tutorials/issue_triage/_index.md
index 97d632cb304596be6a5bf87a9976eb054cc280e1..470b6cb23a1686e829224ff7c236e0cb9ed80456 100644
--- a/doc/tutorials/issue_triage/index.md
+++ b/doc/tutorials/issue_triage/_index.md
@@ -224,7 +224,7 @@ Next, you can:
   - Create separate issue boards named `Issue triage (by priority)` and `Issue triage (by type)`.
     This way, you'll keep various types of triage work separate, but will require switching between
     boards.
-  - [Set up issue boards for team hand-off](../boards_for_teams/index.md).
+  - [Set up issue boards for team hand-off](../boards_for_teams/_index.md).
 - Browse issues by priority or severity in issue lists,
   [filtered by each label](../../user/project/issues/managing_issues.md#filter-the-list-of-issues).
   If it's available to you, make use of
diff --git a/doc/tutorials/kanban/index.md b/doc/tutorials/kanban/_index.md
similarity index 100%
rename from doc/tutorials/kanban/index.md
rename to doc/tutorials/kanban/_index.md
diff --git a/doc/tutorials/learn_git.md b/doc/tutorials/learn_git.md
index f0225dcac7b3d1753728ffd778e66ae4f9ce8227..8ddacfaad9511a7b689979b7b50515be99dada1b 100644
--- a/doc/tutorials/learn_git.md
+++ b/doc/tutorials/learn_git.md
@@ -11,10 +11,10 @@ the most out of GitLab.
 
 | Topic | Description | Good for beginners |
 |-------|-------------|--------------------|
-| [Make your first Git commit](make_first_git_commit/index.md) | Create a project, edit a file, and commit changes to a Git repository from the command line. | **{star}** |
+| [Make your first Git commit](make_first_git_commit/_index.md) | Create a project, edit a file, and commit changes to a Git repository from the command line. | **{star}** |
 | [Start using Git on the command line](../topics/git/commands.md) | Learn how to set up Git, clone repositories, and work with branches. | **{star}** |
 | [Take advantage of Git rebase](https://about.gitlab.com/blog/2022/10/06/take-advantage-of-git-rebase/) | Learn how to use the `rebase` command in your workflow. | |
-| [Update Git commit messages](update_commit_messages/index.md) | Learn how to update commit messages and push the changes to GitLab. | |
+| [Update Git commit messages](update_commit_messages/_index.md) | Learn how to update commit messages and push the changes to GitLab. | |
 | [Git cheat sheet](https://about.gitlab.com/images/press/git-cheat-sheet.pdf) | Download a PDF of common Git commands. | |
 | [Git-ing started with Git](https://www.youtube.com/watch?v=Ce5nz5n41z4) | Git basics video tutorial. | |
 | [GitLab source code management walkthrough](https://www.youtube.com/watch?v=wTQ3aXJswtM) | GitLab workflow video tutorial. | |
diff --git a/doc/tutorials/left_sidebar/index.md b/doc/tutorials/left_sidebar/_index.md
similarity index 100%
rename from doc/tutorials/left_sidebar/index.md
rename to doc/tutorials/left_sidebar/_index.md
diff --git a/doc/tutorials/make_first_git_commit/index.md b/doc/tutorials/make_first_git_commit/_index.md
similarity index 99%
rename from doc/tutorials/make_first_git_commit/index.md
rename to doc/tutorials/make_first_git_commit/_index.md
index 5e44433d5094dd177dbe38f4d4c28acecd7143cd..d374fd506536d4be242bf045767c0aab4fd73f3f 100644
--- a/doc/tutorials/make_first_git_commit/index.md
+++ b/doc/tutorials/make_first_git_commit/_index.md
@@ -272,7 +272,7 @@ Nice work.
 ## Find more Git learning resources
 
 - Get a complete introduction to Git in the <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> [Git for GitLab](https://www.youtube.com/watch?v=4lxvVj7wlZw) beginner's course (1h 33m).
-- Find other tutorials about Git and GitLab on the [tutorials page](../index.md).
+- Find other tutorials about Git and GitLab on the [tutorials page](../_index.md).
 - PDF download: [GitLab Git Cheat Sheet](https://about.gitlab.com/images/press/git-cheat-sheet.pdf).
 - Blog post: [Git Tips & Tricks](https://about.gitlab.com/blog/2016/12/08/git-tips-and-tricks/).
 - Blog post: [Eight Tips to help you work better with Git](https://about.gitlab.com/blog/2015/02/19/8-tips-to-help-you-work-better-with-git/).
diff --git a/doc/tutorials/manage_user/index.md b/doc/tutorials/manage_user/_index.md
similarity index 100%
rename from doc/tutorials/manage_user/index.md
rename to doc/tutorials/manage_user/_index.md
diff --git a/doc/tutorials/move_personal_project_to_group/index.md b/doc/tutorials/move_personal_project_to_group/_index.md
similarity index 100%
rename from doc/tutorials/move_personal_project_to_group/index.md
rename to doc/tutorials/move_personal_project_to_group/_index.md
diff --git a/doc/tutorials/plan_and_track.md b/doc/tutorials/plan_and_track.md
index d22ae57f491e04aca968c877103eafa73ca56f58..fc66dea2a16a555301aa10bbf7415343e6476e0e 100644
--- a/doc/tutorials/plan_and_track.md
+++ b/doc/tutorials/plan_and_track.md
@@ -12,13 +12,13 @@ issues, epics, and more.
 | Topic | Description | Good for beginners |
 |-------|-------------|--------------------|
 | [GitLab Agile Project Management](https://university.gitlab.com/courses/gitlab-agile-project-management-s2) | Learn how to use planning features to manage your projects in this self-paced course. | **{star}** |
-| [Build a protected workflow for your project](protected_workflow/index.md) | Set up a workflow for your teams, and enforce protections with approval rules. | |
-| [Run an agile iteration](agile_sprint/index.md) | Use group, projects, and iterations to run an agile development iteration. | |
-| [Use GitLab for Kanban](kanban/index.md) | Use issue boards, scoped labels, and value stream analytics for Kanban. | **{star}** |
-| [Use GitLab for Scrum](scrum_events/index.md) | Learn to run core Scrum ceremonies and workflows in GitLab. | |
-| [Set up a project for idea management](idea_management/index.md) | Use an issue board and scoped labels to manage ideas in a team. | **{star}** |
-| [Set up a project for issue triage](issue_triage/index.md) | Use labels to set up a project for issue triage. | **{star}** |
-| [Set up issue boards for team hand-off](boards_for_teams/index.md) | Use issue boards and scoped labels to set up collaboration across many teams. | **{star}** |
-| [Set up an issue board for team stand-up](boards_for_standups/index.md) | Use issue boards and workflow labels to facilitate team stand-ups. | **{star}** |
+| [Build a protected workflow for your project](protected_workflow/_index.md) | Set up a workflow for your teams, and enforce protections with approval rules. | |
+| [Run an agile iteration](agile_sprint/_index.md) | Use group, projects, and iterations to run an agile development iteration. | |
+| [Use GitLab for Kanban](kanban/_index.md) | Use issue boards, scoped labels, and value stream analytics for Kanban. | **{star}** |
+| [Use GitLab for Scrum](scrum_events/_index.md) | Learn to run core Scrum ceremonies and workflows in GitLab. | |
+| [Set up a project for idea management](idea_management/_index.md) | Use an issue board and scoped labels to manage ideas in a team. | **{star}** |
+| [Set up a project for issue triage](issue_triage/_index.md) | Use labels to set up a project for issue triage. | **{star}** |
+| [Set up issue boards for team hand-off](boards_for_teams/_index.md) | Use issue boards and scoped labels to set up collaboration across many teams. | **{star}** |
+| [Set up an issue board for team stand-up](boards_for_standups/_index.md) | Use issue boards and workflow labels to facilitate team stand-ups. | **{star}** |
 | <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> [Epics and issue boards](https://www.youtube.com/watch?v=eQUnHwbKEkY) | Find out how to use epics and issue boards for project management. | |
 | <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> [Portfolio Planning - Portfolio Management](https://www.youtube.com/watch?v=d9scVJUIF4c) | Find out how manage your portfolio with requirements, issues, epics, milestones, and time tracking. | |
diff --git a/doc/tutorials/product_analytics_onboarding_website_project/index.md b/doc/tutorials/product_analytics_onboarding_website_project/_index.md
similarity index 100%
rename from doc/tutorials/product_analytics_onboarding_website_project/index.md
rename to doc/tutorials/product_analytics_onboarding_website_project/_index.md
diff --git a/doc/tutorials/protected_workflow/index.md b/doc/tutorials/protected_workflow/_index.md
similarity index 100%
rename from doc/tutorials/protected_workflow/index.md
rename to doc/tutorials/protected_workflow/_index.md
diff --git a/doc/tutorials/reviews/index.md b/doc/tutorials/reviews/_index.md
similarity index 100%
rename from doc/tutorials/reviews/index.md
rename to doc/tutorials/reviews/_index.md
diff --git a/doc/tutorials/scan_execution_policy/index.md b/doc/tutorials/scan_execution_policy/_index.md
similarity index 100%
rename from doc/tutorials/scan_execution_policy/index.md
rename to doc/tutorials/scan_execution_policy/_index.md
diff --git a/doc/tutorials/scan_result_policy/index.md b/doc/tutorials/scan_result_policy/_index.md
similarity index 100%
rename from doc/tutorials/scan_result_policy/index.md
rename to doc/tutorials/scan_result_policy/_index.md
diff --git a/doc/tutorials/scrum_events/index.md b/doc/tutorials/scrum_events/_index.md
similarity index 100%
rename from doc/tutorials/scrum_events/index.md
rename to doc/tutorials/scrum_events/_index.md
diff --git a/doc/tutorials/scrum_events/standups_retrospectives_velocity.md b/doc/tutorials/scrum_events/standups_retrospectives_velocity.md
index 353e1618d2c84d8bbe27357989f64dc8d847c09f..cf2fa6914c7ed0c1006127836d49729c6393fe92 100644
--- a/doc/tutorials/scrum_events/standups_retrospectives_velocity.md
+++ b/doc/tutorials/scrum_events/standups_retrospectives_velocity.md
@@ -15,7 +15,7 @@ facilitate the following common Scrum ceremonies in both co-located and distribu
 - Story points
 - Velocity and volatility
 
-This page builds on the concepts and workflows from the [introductory Scrum tutorial](index.md).
+This page builds on the concepts and workflows from the [introductory Scrum tutorial](_index.md).
 If you haven't completed that tutorial, you should do so before you go further.
 
 ## Daily stand-ups
@@ -297,4 +297,4 @@ If you're experiencing high volatility, you can explore the following:
 
 ## Related topics
 
-- [Tutorial: Set up an issue board for a team stand-up](../boards_for_standups/index.md)
+- [Tutorial: Set up an issue board for a team stand-up](../boards_for_standups/_index.md)
diff --git a/doc/tutorials/secure_application.md b/doc/tutorials/secure_application.md
index c4dc4c8fc399ba7bd7edd064cc6accbe77bd5e97..3775f0e60a7fd63064313e7c0f46440342c9360e 100644
--- a/doc/tutorials/secure_application.md
+++ b/doc/tutorials/secure_application.md
@@ -12,10 +12,10 @@ GitLab can check your application for security vulnerabilities and that it meets
 |-------|-------------|--------------------|
 | [Set up dependency scanning](dependency_scanning.md) | Learn how to detect vulnerabilities in an application's dependencies. | **{star}** |
 | [Export Dependency List in SBOM format](export_sbom.md) | Learn how to export an application's dependencies to the CycloneDX SBOM format. | **{star}** |
-| [Create a compliance pipeline](compliance_pipeline/index.md) | Learn how to create compliance pipelines for your groups. | **{star}** |
-| [Set up a merge request approval policy](scan_result_policy/index.md) | Learn how to configure a merge request approval policy that takes action based on scan results. | **{star}** |
-| [Set up a scan execution policy](scan_execution_policy/index.md) | Learn how to create a scan execution policy to enforce security scanning of your project. | **{star}** |
-| [Scan a Docker container for vulnerabilities](container_scanning/index.md) | Learn how to use container scanning templates to add container scanning to your projects. | **{star}** |
+| [Create a compliance pipeline](compliance_pipeline/_index.md) | Learn how to create compliance pipelines for your groups. | **{star}** |
+| [Set up a merge request approval policy](scan_result_policy/_index.md) | Learn how to configure a merge request approval policy that takes action based on scan results. | **{star}** |
+| [Set up a scan execution policy](scan_execution_policy/_index.md) | Learn how to create a scan execution policy to enforce security scanning of your project. | **{star}** |
+| [Scan a Docker container for vulnerabilities](container_scanning/_index.md) | Learn how to use container scanning templates to add container scanning to your projects. | **{star}** |
 | [Protect your project with secret push protection](../user/application_security/secret_detection/push_protection_tutorial.md) | Enable secret push protection in your project. | **{star}** |
 | [Remove a secret from your commits](../user/application_security/secret_detection/remove_secrets_tutorial.md) | Learn how to remove a secret from your commit history. | **{star}** |
 | [Get started with GitLab application security](../user/application_security/get-started-security.md) | Follow recommended steps to set up security tools. | |
diff --git a/doc/tutorials/set_up_gitlab_google_integration/index.md b/doc/tutorials/set_up_gitlab_google_integration/_index.md
similarity index 100%
rename from doc/tutorials/set_up_gitlab_google_integration/index.md
rename to doc/tutorials/set_up_gitlab_google_integration/_index.md
diff --git a/doc/tutorials/setup_steps/index.md b/doc/tutorials/setup_steps/_index.md
similarity index 100%
rename from doc/tutorials/setup_steps/index.md
rename to doc/tutorials/setup_steps/_index.md
diff --git a/doc/tutorials/update_commit_messages/index.md b/doc/tutorials/update_commit_messages/_index.md
similarity index 100%
rename from doc/tutorials/update_commit_messages/index.md
rename to doc/tutorials/update_commit_messages/_index.md
diff --git a/doc/tutorials/update_git_remote_url/index.md b/doc/tutorials/update_git_remote_url/_index.md
similarity index 100%
rename from doc/tutorials/update_git_remote_url/index.md
rename to doc/tutorials/update_git_remote_url/_index.md
diff --git a/doc/tutorials/website_project_with_analytics/index.md b/doc/tutorials/website_project_with_analytics/_index.md
similarity index 100%
rename from doc/tutorials/website_project_with_analytics/index.md
rename to doc/tutorials/website_project_with_analytics/_index.md
diff --git a/doc/user/application_security/container_scanning/index.md b/doc/user/application_security/container_scanning/index.md
index 462aeef1a7438f7728d9ec7d3e27848c7bad708e..90b39995d8608c9cb6d7da5fc98065757361ed41 100644
--- a/doc/user/application_security/container_scanning/index.md
+++ b/doc/user/application_security/container_scanning/index.md
@@ -22,7 +22,7 @@ apps.
 - <i class="fa fa-youtube-play youtube" aria-hidden="true"></i>
   For an overview, see [Container Scanning](https://www.youtube.com/watch?v=C0jn2eN5MAs).
 - <i class="fa fa-youtube-play youtube" aria-hidden="true"></i> For a video walkthrough, see [How to set up Container Scanning using GitLab](https://youtu.be/h__mcXpil_4?si=w_BVG68qnkL9x4l1).
-- For an introductory tutorial, see [Scan a Docker container for vulnerabilities](../../../tutorials/container_scanning/index.md).
+- For an introductory tutorial, see [Scan a Docker container for vulnerabilities](../../../tutorials/container_scanning/_index.md).
 
 Container Scanning is often considered part of Software Composition Analysis (SCA). SCA can contain
 aspects of inspecting the items your code uses. These items typically include application and system
diff --git a/doc/user/free_user_limit.md b/doc/user/free_user_limit.md
index 18adb5b97f09c368f6757570927a3008d717e556..a58cf6eea75b1ee24db93ad957c6a760e1a78904 100644
--- a/doc/user/free_user_limit.md
+++ b/doc/user/free_user_limit.md
@@ -157,7 +157,7 @@ Personal projects are not located in top-level group namespaces. You can manage
 the users in each of your personal projects, but you cannot have more than five
 users in all of your personal projects.
 
-You should [move your personal project to a group](../tutorials/move_personal_project_to_group/index.md)
+You should [move your personal project to a group](../tutorials/move_personal_project_to_group/_index.md)
 so that you can:
 
 - Increase the amount of users to more than five.
diff --git a/doc/user/get_started/get_started_managing_code.md b/doc/user/get_started/get_started_managing_code.md
index 1b82e005eb3246b001e68c60a200b0d7ea725ede..e3f442788c0dc0636a4ecef452e2e276e9af3160 100644
--- a/doc/user/get_started/get_started_managing_code.md
+++ b/doc/user/get_started/get_started_managing_code.md
@@ -80,7 +80,7 @@ and proposes combining it into the target branch.
 
 For details, see:
 
-- [Use Git to create a merge request](../../tutorials/make_first_git_commit/index.md)
+- [Use Git to create a merge request](../../tutorials/make_first_git_commit/_index.md)
 - [Use the UI to create a merge request when you add, edit, or upload a file](../project/merge_requests/creating_merge_requests.md)
 
 ## Step 4: Have the code reviewed
diff --git a/doc/user/group/compliance_pipelines.md b/doc/user/group/compliance_pipelines.md
index c193fc4c360f37035cb249c0096d1d31956e9131..d551765aa8fed9196a28d7799255d3cb1766e2b3 100644
--- a/doc/user/group/compliance_pipelines.md
+++ b/doc/user/group/compliance_pipelines.md
@@ -36,7 +36,7 @@ For more information, see:
 
 - [Example configuration](#example-configuration) for help configuring a compliance pipeline that runs jobs from
   labeled project pipeline configuration.
-- The [Create a compliance pipeline](../../tutorials/compliance_pipeline/index.md) tutorial.
+- The [Create a compliance pipeline](../../tutorials/compliance_pipeline/_index.md) tutorial.
 
 ## Pipeline execution policies migration
 
diff --git a/doc/user/group/iterations/index.md b/doc/user/group/iterations/index.md
index f33645299b07202d4ccd86abd3e44a2307e0be36..be0b0662042e21234f20be3769ea8944857cc0af 100644
--- a/doc/user/group/iterations/index.md
+++ b/doc/user/group/iterations/index.md
@@ -40,7 +40,7 @@ predictable delivery cadence.
 When teams work in sprints, each iteration provides a clear timebox for planning,
 execution, and delivery of work items.
 For more information, see
-[Tutorial: Use GitLab to facilitate Scrum](../../../tutorials/scrum_events/index.md).
+[Tutorial: Use GitLab to facilitate Scrum](../../../tutorials/scrum_events/_index.md).
 
 For example, when running two-week sprints, teams often need to coordinate multiple workstreams.
 The development team tracks implementation in the current sprint, while product managers prepare
@@ -364,4 +364,4 @@ To group issues by label:
 ## Related topics
 
 - [Add an issue to an iteration](../../project/issues/managing_issues.md#add-an-issue-to-an-iteration)
-- [Tutorial: Use GitLab to run an Agile iteration](../../../tutorials/agile_sprint/index.md)
+- [Tutorial: Use GitLab to run an Agile iteration](../../../tutorials/agile_sprint/_index.md)
diff --git a/doc/user/project/labels.md b/doc/user/project/labels.md
index cb9bb317d6c2cd54ac918e79fc4e39c0b003fd42..5e062c02f62a90620bc423c6c6096d340f3ac9c9 100644
--- a/doc/user/project/labels.md
+++ b/doc/user/project/labels.md
@@ -521,5 +521,5 @@ To set a label to get locked on merge:
 
 Practice working with labels in the following tutorials:
 
-- [Set up a single project for issue triage](../../tutorials/issue_triage/index.md)
-- [Set up issue boards for team hand-off](../../tutorials/boards_for_teams/index.md)
+- [Set up a single project for issue triage](../../tutorials/issue_triage/_index.md)
+- [Set up issue boards for team hand-off](../../tutorials/boards_for_teams/_index.md)
diff --git a/doc/user/project/organize_work_with_projects.md b/doc/user/project/organize_work_with_projects.md
index 25656d18647c20755f89571fec65e5355f23e695..9a186fc03a34f3bbfb764bedfd605b6d2a8fa13d 100644
--- a/doc/user/project/organize_work_with_projects.md
+++ b/doc/user/project/organize_work_with_projects.md
@@ -25,4 +25,4 @@ GitLab does not limit the number of private projects you can create.
 | [**Share projects**](members/sharing_projects_groups.md)<br>Member roles, invitations, group access. | [**Reserved project and group names**](../reserved_names.md)<br>Naming conventions, restrictions, reserved names. | [**Search**](../search/index.md)<br>Basic, advanced, exact, search scope, commit SHA search. |
 | [**Badges**](badges.md)<br>Pipeline status, group, project, custom badges. | [**Project topics**](project_topics.md)<br>Project organization, subscribe, view.  | [**Code intelligence**](code_intelligence.md)<br>Type signatures, symbol documentation, go-to definition. |
 | [**Import and migrate**](import/index.md)<br>Repository migration, third-party repositories, user contribution mapping. | [**System notes**](system_notes.md)<br>Event history, activity log, comments history. | [**Transfer a project to another namespace**](import/index.md)<br>Namespace transfer, subscription transfer. |
-| [**Use a project as a Go package**](use_project_as_go_package.md)<br>Go modules, import calls. | [**Tutorial: Build a protected workflow for your project**](../../tutorials/protected_workflow/index.md)<br>Security, approval rules, branch protection. | [**Troubleshooting**](troubleshooting.md)<br>Problem solving, common issues, debugging, error resolution. |
+| [**Use a project as a Go package**](use_project_as_go_package.md)<br>Go modules, import calls. | [**Tutorial: Build a protected workflow for your project**](../../tutorials/protected_workflow/_index.md)<br>Security, approval rules, branch protection. | [**Troubleshooting**](troubleshooting.md)<br>Problem solving, common issues, debugging, error resolution. |
diff --git a/ee/app/assets/javascripts/projects/components/move_personal_project_to_group_modal.vue b/ee/app/assets/javascripts/projects/components/move_personal_project_to_group_modal.vue
index ecf2a03cebd2cfcfa821b088493377d0210947e9..562279bcd16995b857804572e363ee73cc184c92 100644
--- a/ee/app/assets/javascripts/projects/components/move_personal_project_to_group_modal.vue
+++ b/ee/app/assets/javascripts/projects/components/move_personal_project_to_group_modal.vue
@@ -44,7 +44,7 @@ export default {
     modalTitle: s__('PersonalProject|Your project %{projectName} is not in a group'),
     buttonLabel: s__('PersonalProject|Learn to move a project to a group'),
   },
-  moveProjectDocsPath: helpPagePath('tutorials/move_personal_project_to_group/index.md'),
+  moveProjectDocsPath: helpPagePath('tutorials/move_personal_project_to_group/_index.md'),
   modalId: MOVE_PERSONAL_PROJECT_TO_GROUP_MODAL,
 };
 </script>
diff --git a/ee/spec/features/security/project/discover_spec.rb b/ee/spec/features/security/project/discover_spec.rb
index b3bf7694f03441f1c86f48cd772613ff0c190651..1e624c881b9f8782869e40b0d2b530f2bebaadf5 100644
--- a/ee/spec/features/security/project/discover_spec.rb
+++ b/ee/spec/features/security/project/discover_spec.rb
@@ -22,7 +22,7 @@
         expect(page).to have_content "#{project.name} is a personal project, so none of this is available."
         expect(page).to have_link(
           'Learn to move a project to a group',
-          href: help_page_path('tutorials/move_personal_project_to_group/index.md')
+          href: help_page_path('tutorials/move_personal_project_to_group/_index.md')
         )
       end
     end
diff --git a/ee/spec/frontend/vue_shared/discover/move_project_to_group_modal_spec.js b/ee/spec/frontend/vue_shared/discover/move_project_to_group_modal_spec.js
index fe5004b2d2373e524fe4addcd18d39916b84de01..d8149c82cc30b28fd7c24c964350874e1e44905f 100644
--- a/ee/spec/frontend/vue_shared/discover/move_project_to_group_modal_spec.js
+++ b/ee/spec/frontend/vue_shared/discover/move_project_to_group_modal_spec.js
@@ -51,7 +51,7 @@ describe('Move project to group modal', () => {
     it('shows button and links to proper docs', () => {
       expect(findPrimaryAction().text).toBe('Learn to move a project to a group');
       expect(findPrimaryAction().attributes.href).toBe(
-        helpPagePath('tutorials/move_personal_project_to_group/index.md'),
+        helpPagePath('tutorials/move_personal_project_to_group/_index.md'),
       );
     });
   });