diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 15c93ddf5bbfb2dc13098aec5b29701a2d4aff0c..320e65c39be36cc370be37381c04a0d31fff01a8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1054,6 +1054,7 @@ wheel:pypi:upload:
         - wheel-windows-python310-x86_64:build
         - wheel-windows-python311-x86_64:build
         - wheel-windows-python312-x86_64:build
+        - wheel-windows-python313-x86_64:build
     needs:
         - wheel-linux-python38-x86_64:build
         - wheel-linux-python38-x86_64:test
@@ -1105,6 +1106,8 @@ wheel:pypi:upload:
         - wheel-windows-python311-x86_64:test
         - wheel-windows-python312-x86_64:build
         - wheel-windows-python312-x86_64:test
+        - wheel-windows-python313-x86_64:build
+        - wheel-windows-python313-x86_64:test
 
 wheel:vtk:upload:
     extends:
@@ -1214,6 +1217,9 @@ wheel:vtk:upload:
         - wheel-windows-python312-x86_64:build
         - wheel-windows-python312-x86_64:test
         - wheel-windows-python312-x86_64-osmesa:test
+        - wheel-windows-python313-x86_64:build
+        - wheel-windows-python313-x86_64:test
+        - wheel-windows-python313-x86_64-osmesa:test
 
 wheel-sdk:upload:
     extends:
@@ -1242,6 +1248,7 @@ wheel-sdk:upload:
         - wheel-windows-python310-x86_64:build
         - wheel-windows-python311-x86_64:build
         - wheel-windows-python312-x86_64:build
+        - wheel-windows-python313-x86_64:build
     needs:
         - wheel-linux-python38-x86_64:build
         - wheel-linux-python38-x86_64:test
@@ -1322,6 +1329,9 @@ wheel-sdk:upload:
         - wheel-windows-python312-x86_64:build
         - wheel-windows-python312-x86_64:test
         - wheel-windows-python312-x86_64-osmesa:test
+        - wheel-windows-python313-x86_64:build
+        - wheel-windows-python313-x86_64:test
+        - wheel-windows-python313-x86_64-osmesa:test
     variables:
         RSYNC_SOURCE: build/*-wheel-sdk-*.tar.xz
         RSYNC_DESTINATION: wheel-sdks/
@@ -1484,6 +1494,7 @@ release-artifacts:upload:
         - wheel-windows-python310-x86_64:build
         - wheel-windows-python311-x86_64:build
         - wheel-windows-python312-x86_64:build
+        - wheel-windows-python313-x86_64:build
     needs:
         - source:build
         - documentation:release-prep
@@ -1566,6 +1577,9 @@ release-artifacts:upload:
         - wheel-windows-python312-x86_64:build
         - wheel-windows-python312-x86_64:test
         - wheel-windows-python312-x86_64-osmesa:test
+        - wheel-windows-python313-x86_64:build
+        - wheel-windows-python313-x86_64:test
+        - wheel-windows-python313-x86_64-osmesa:test
     variables:
         RSYNC_SOURCE: release/
 
@@ -2206,6 +2220,40 @@ wheel-windows-python312-x86_64-osmesa:test:
     needs:
         - wheel-windows-python312-x86_64:build
 
+wheel-windows-python313-x86_64:build:
+    extends:
+        - .wheel_windows313_x86_64
+        - .cmake_build_wheel_windows
+        - .windows_wheel_builder_tags
+        - .cmake_wheel_artifacts
+        - .run_manually
+    dependencies: []
+    needs: []
+
+wheel-windows-python313-x86_64:test:
+    extends:
+        - .wheel_windows313_x86_64
+        - .cmake_test_wheel_windows
+        - .windows_wheel_builder_tags
+        - .run_automatically
+        - .cdash_annotations_artifacts
+    dependencies:
+        - wheel-windows-python313-x86_64:build
+    needs:
+        - wheel-windows-python313-x86_64:build
+
+wheel-windows-python313-x86_64-osmesa:test:
+    extends:
+        - .wheel_windows313_x86_64_osmesa
+        - .cmake_test_wheel_windows
+        - .windows_wheel_builder_tags
+        - .run_automatically
+        - .cdash_annotations_artifacts
+    dependencies:
+        - wheel-windows-python313-x86_64:build
+    needs:
+        - wheel-windows-python313-x86_64:build
+
 macos-x86_64-java8:build:
     extends:
         - .macos_x86_64_java
diff --git a/.gitlab/ci/configure_wheel_windows313_x86_64.cmake b/.gitlab/ci/configure_wheel_windows313_x86_64.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..a1b99c8d4b61b9f706fee18325f20ab3ec526e57
--- /dev/null
+++ b/.gitlab/ci/configure_wheel_windows313_x86_64.cmake
@@ -0,0 +1 @@
+include("${CMAKE_CURRENT_LIST_DIR}/configure_wheel.cmake")
diff --git a/.gitlab/ci/configure_wheel_windows313_x86_64_osmesa.cmake b/.gitlab/ci/configure_wheel_windows313_x86_64_osmesa.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..a1b99c8d4b61b9f706fee18325f20ab3ec526e57
--- /dev/null
+++ b/.gitlab/ci/configure_wheel_windows313_x86_64_osmesa.cmake
@@ -0,0 +1 @@
+include("${CMAKE_CURRENT_LIST_DIR}/configure_wheel.cmake")
diff --git a/.gitlab/os-windows.yml b/.gitlab/os-windows.yml
index eb01ba8c90975201ea64b06f1d847ca5ff37ba77..af54785d394d1eeca880d51df34f8aa20b935a13 100644
--- a/.gitlab/os-windows.yml
+++ b/.gitlab/os-windows.yml
@@ -92,6 +92,19 @@
     variables:
         CMAKE_CONFIGURATION: wheel_windows312_x86_64_osmesa
 
+.wheel_windows313_x86_64:
+    extends: .wheel_windows_x86_64
+
+    variables:
+        CMAKE_CONFIGURATION: wheel_windows313_x86_64
+
+.wheel_windows313_x86_64_osmesa:
+    extends:
+        - .wheel_windows313_x86_64
+        - .wheel_windows_osmesa_addon
+
+    variables:
+        CMAKE_CONFIGURATION: wheel_windows313_x86_64_osmesa
 ### Build and test
 
 .windows_build: