diff --git a/_data/devices/thor.yml b/_data/devices/thor.yml
new file mode 100644
index 000000000..081603e6c
--- /dev/null
+++ b/_data/devices/thor.yml
@@ -0,0 +1,40 @@
+architecture: arm64
+battery: {capacity: 4860, removable: False, tech: 'Li-Po'}
+before_install: {instructions: 'needs_specific_android_fw', ships_fw: True, version: '14'}
+before_recovery_install: {instructions: 'boot_stack', partitions: [boot, dtbo, vendor_boot]}
+bluetooth: {profiles: [A2DP + aptX HD], spec: '5.2'}
+cameras:
+ - {flash: 'LED', info: '50 MP'}
+ - {flash: 'LED', info: '48 MP (periscope telephoto)'}
+ - {flash: 'LED', info: '48 MP (ultrawide)'}
+ - {flash: None, info: '32 MP'}
+codename: thor
+cpu: Cortex-X2 & Cortex-A710 & Cortex-A510
+cpu_cores: '8'
+cpu_freq: 1 x 3.19 GHz + 3 x 2.75 GHz + 4 x 1.8 GHz
+current_branch: 21
+dimensions: {depth: 9.1, height: 163.2, width: 75}
+download_boot: With the device powered off, hold Volume Down + Power. Keep holding both buttons until the word "FASTBOOT" appears on the screen, then release.
+gpu: Qualcomm Adreno 730
+image: thor.png
+install_method: fastboot_xiaomi
+is_ab_device: true
+kernel: {repo: android_kernel_xiaomi_sm8450, version: '5.10'}
+maintainers: [Adrianyyy]
+models: [2203121C]
+name: 12S Ultra
+network: [2G GSM, 2G CDMA, 3G UMTS, 4G LTE, 5G NR]
+peripherals: [A-GPS, Accelerometer, Compass, Dual SIM, Dual speakers, Dual-frequency GNSS, Fingerprint reader, BeiDou, Galileo, GLONASS, GPS, NAVIC, QZSS, Gyroscope, IR blaster, Light sensor, NFC, Ultrasound proximity sensor, USB OTG]
+ram: 8/12 GB LPDDR5
+recovery_boot: With the device powered off, hold Volume Up + Power. Keep holding both buttons until the "MI" logo appears on the screen, then release.
+recovery_partition_name: recovery
+release: 2022-07-09
+screen: {refresh_rate: 120, resolution: '1440x3200', size: 6.73, technology: 'AMOLED'}
+soc: Qualcomm SM8475 Snapdragon 8+ Gen1
+storage: 256/512 GB UFS 3.1
+tree: android_device_xiaomi_thor
+type: phone
+vendor: Xiaomi
+vendor_short: xiaomi
+versions: [21]
+wifi: 802.11 a/b/g/n/ac/ax
diff --git a/images/devices/small/thor.png b/images/devices/small/thor.png
new file mode 100644
index 000000000..17689def6
Binary files /dev/null and b/images/devices/small/thor.png differ
diff --git a/images/devices/thor.png b/images/devices/thor.png
new file mode 100644
index 000000000..feb267ec7
Binary files /dev/null and b/images/devices/thor.png differ
diff --git a/pages/build/thor.md b/pages/build/thor.md
new file mode 100644
index 000000000..9c6d5108f
--- /dev/null
+++ b/pages/build/thor.md
@@ -0,0 +1,8 @@
+---
+sidebar: home_sidebar
+title: Build for thor
+folder: build
+permalink: /devices/thor/build/
+device: thor
+---
+{% include templates/device_build.md %}
diff --git a/pages/info/thor.md b/pages/info/thor.md
new file mode 100644
index 000000000..085114f1b
--- /dev/null
+++ b/pages/info/thor.md
@@ -0,0 +1,9 @@
+---
+sidebar: home_sidebar
+title: Info about thor
+folder: info
+layout: deviceinfo
+permalink: /devices/thor/
+device: thor
+---
+{% include templates/device_info.md %}
diff --git a/pages/install/thor.md b/pages/install/thor.md
new file mode 100644
index 000000000..11c38c5b1
--- /dev/null
+++ b/pages/install/thor.md
@@ -0,0 +1,8 @@
+---
+sidebar: home_sidebar
+title: Install LineageOS on thor
+folder: install
+permalink: /devices/thor/install/
+device: thor
+---
+{% include templates/device_install.md %}
diff --git a/pages/update/thor.md b/pages/update/thor.md
new file mode 100644
index 000000000..996eaf445
--- /dev/null
+++ b/pages/update/thor.md
@@ -0,0 +1,8 @@
+---
+sidebar: home_sidebar
+title: Update LineageOS on thor
+folder: update
+permalink: /devices/thor/update/
+device: thor
+---
+{% include templates/device_update.md %}
diff --git a/pages/upgrade/thor.md b/pages/upgrade/thor.md
new file mode 100644
index 000000000..f528a68e7
--- /dev/null
+++ b/pages/upgrade/thor.md
@@ -0,0 +1,8 @@
+---
+sidebar: home_sidebar
+title: Upgrade LineageOS on thor
+folder: upgrade
+permalink: /devices/thor/upgrade/
+device: thor
+---
+{% include templates/device_upgrade.md %}