Creating a custom theme for Xiaomi Redmi Note 8: from idea to installation

Xiaomi Redmi Note 8 is one of the most popular smartphones in the budget segment, but even years after its release, its MIUI interface can get tired of standard design. Creating a custom theme allows you not only to personalize the device to your tastes, but also to optimize the visual experience, add unique icons or even adapt the design to your corporate style. Unlike ready-made themes from the Mi Theme Store, the custom theme gives you complete control over every element from fonts to animations.

In this guide, we will take a look at the whole process, from tool preparation and design to compilation and installation of the theme on the Redmi Note 8. APK-System application files, edit XML-resources and avoid common errors that lead to interface crashes or endless loading. Special attention is paid to security โ€“ improper manipulation of system files can lead to brick (turning the phone into a brick), so every step is accompanied by warnings and backup tips.

Important: the process requires basic knowledge of ADB, archivers, and graphics editors. If youโ€™ve never modified your firmware, start with the device preparation section and be sure to read the FAQ at the end of the article.

1. Device preparation: bootloader unlock and root rights

Before you start creating a theme, you need to prepare the Redmi Note 8 for modifications. Standard MIUI blocks changes to system files, so you will need to:

  • ๐Ÿ”“ Unlock the bootloader through the official Mi Unlock Tool.
  • ๐Ÿ“ฑ Install custom Recovery TWRP (3.7.0 version or later for the Redmi Note 8).
  • ๐Ÿ› ๏ธ Get root rights with Magisk (version 26)+).

Unlocking the bootloader erases all data from the device, so be sure to back up via Mi Cloud or locally on your PC. Use the adb backup command to save apps and settings:

adb backup -apk -obb -shared -all -f backup.ab

โš ๏ธ Note: Xiaomi can block accounts if unlocking the bootloader is done too often (more than 1 time in 30 days). โ†’ The phone. โ†’ Version. MIUI (Tap 7 times to turn on the developer mode, then Settings โ†’ Additionally. โ†’ For developers โ†’ Mi Unlock status).

After unlocking the bootloader, install TWRP via fastboot:

fastboot flash recovery twrp-3.7.0-ginkgo.img


fastboot boot twrp-3.7.0-ginkgo.img

In TWRP, you can run Magisk for root rights. Download the latest version from the official GitHub repository and install it through Install โ†’ Select Zip.

๐Ÿ“Š What tool do you use to modify Android?
TWRP
Magisk
ADB
Other

2. Selection of tools for creating a theme

To develop a custom theme, you need a set of programs and templates. Here is the minimum list:

Tool.AppointmentReference
ApktoolDecompilation and assembly APK-system-application filesibotpeaches.github.io
Android StudioEditing XML-resources, preview of designdeveloper.android.com
GIMP/PhotoshopCreating icons, background images, UI elementsgimp.org
MIUI Theme EditorSimplified editing of themes (alternative to manual assembly)XDA Developers

For beginners, we recommend starting with MIUI Theme Editor, which allows you to edit existing themes without deep immersion in code. Power users can work directly with framework-res.apk and SystemUI.apk, but this requires knowledge of the structure of Android resources.

Download the MIUI 12/13 theme template from the XDA or 4PDA forum. Pay attention to the Redmi Note 8 screen resolution of 2340ร—1080 (FHD+). All graphic elements must be adapted to this resolution, otherwise the theme will look blurry or cropped.

๐Ÿ’ก

Use vector icons in.svg format โ€” they scale without loss of quality at any resolution. Convert them to.png at x1, x1.5, x2 resolution to support different screen densities (mdpi, hdpi, xhdpi).

Theme Structure 3: What Files Should Be Modified

The theme in MIUI consists of several key components, each of which is responsible for a specific part of the interface:

  • ๐ŸŽจ colors.xml โ€” color palette (background, text, accents).
  • ๐Ÿ–ผ๏ธ drawable/ โ€” icons, background images, elements UI.
  • ๐Ÿ“ styles.xml โ€” button styles, dialog windows, fonts.
  • ๐Ÿ”ง values/ โ€” sizes, indentations, animations.

The main files that you will need to edit:

miui_theme/




โ”œโ”€โ”€ assets/




โ”‚ โ”œโ”€โ”€ fonts/ # Fonts




โ”‚ โ””โ”€โ”€ wallpapers/ # Wallpaper




โ”œโ”€โ”€ res/




โ”‚ โ”œโ”€โ”€ drawable/ # Icons and graphic elements




โ”‚ โ”œโ”€โ”€ layout/ # Markup of system windows




โ”‚ โ”œโ”€โ”€ values/ # Colors, styles, sizes




โ”‚ โ””โ”€โ”€ anim/ # Animations




โ””โ”€โ”€ AndroidManifest.xml

For example, to change the color of the notification bar, edit the res/values/colors.xml file:

<color name="notification_panel_bg">#FF1A1A1A</color>


<color name="notification_text_color">#FFFFFFFF</color>

โš ๏ธ Attention: Not all elements MIUI For example, system applications (Settings, Security) have their own resources that are redefineable only when they are decompiled. APK. For full customization, each will need to be modified. APK separately.

How to find the right resource in a decompiled APK?
Use keyword search in the folder res/. For example, to find a battery icon, look for files with names. battery_* or ic_battery_*. Use the tool to speed up the process. APK Analyzer in Android Studio: Build โ†’ Analyze APK.

4. Editing graphic elements and icons

Graphic elements are the basis of the visual style of the theme. For the Redmi Note 8, it is important to consider:

  • ๐Ÿ“ Permission of icons: 192ร—192 px (launcher), 48ร—48 px (notification panel).
  • ๐ŸŽญ Format:.png with transparency for icons,.9.png for stretchable elements (e.g. buttons).
  • ๐ŸŒˆ Color gamut: use it colors.xml uniformly.

Example of the structure of the folder with icons:

drawable/




โ”œโ”€โ”€ ic_launcher_phone.png # Phone icon




โ”œโ”€โ”€ ic_launcher_messages.png # Message icon




โ”œโ”€โ”€ status_bar_background.9.png # Status Panel background




โ””โ”€โ”€ notification_panel_bg.png # The background of the notification panel

To create icons under MIUI, use templates from Flaticon or Material Icons. Pay attention to the style - MIUI traditionally uses a flat design with minimalistic shapes.

To replace the standard battery icon:

  1. Find it in SystemUI.apk/res/drawable file battery_*.png.
  2. Create your own versions with the same names (e.g, battery_100.png).
  3. Place them in the drawable folder of your theme.

Icons for all system applications are created|Background images adapted to resolution 2340ร—1080|Colors in colors.xml design|Transparency for.png files is checked-->

5. Compilation of the theme and installation on the device

After editing all resources, you need to compile the theme to.mtz format (standard for MIUI Theme Store).

  1. Pack all the files in. ZIP-file-book theme_name.mtz.
  2. Place the archive in /sdcard/MIUI/theme/ folder on your phone.
  3. Reboot the device and apply the theme through Settings โ†’ Theme โ†’ Local.

If the topic does not apply or errors occur, check:

  • ๐Ÿ” Correct folder structure (must match the template) MIUI).
  • ๐Ÿ“ Availability of all mandatory files (description.xml, preview.png).
  • ๐Ÿ› ๏ธ Access rights (files must be readable for all users).

To install via TWRP (if the theme modifies system APKs):

  1. Create Flashable-ZIP with MIUI Theme Flashable Zip Creator.
  2. Sweat ZIP through TWRP โ†’ Install.
  3. Clear the cache (Wipe) โ†’ Cache/Dalvik).

โš ๏ธ Warning: If after installing the theme, the phone is stuck on startup the Redmi logo, restart to the TWRP and delete the theme file from /data/system/theme/. This indicates a resource conflict or incorrect access rights.

๐Ÿ’ก

Always test the theme on a system backup or a second device. Some modifications (such as a change in framework-res.apk) can lead to a bootloop.

Typical errors and their solution

When creating custom themes, users often face the following problems:

Mistake.Reason.Decision
The topic does not appear on the listIncorrect.mtz structure or missing description.xmlCheck the theme template and file rights (chmod 644)
Icons are displayed blurryResolution mismatch (e.g. icons for mdpi on xhdpi)Reassemble the icons in the correct resolution (192ร—192 for launcher)
Colors do not applySystem Style Conflict or Error in colors.xmlCheck XML Syntax and Style Priority
Bootloop after installationModification of critical system files (e.g. framework-res.apk)Restore original files via TWRP or reflash the firmware

If the theme applies but some elements remain standard, check:

  • ๐Ÿ”„ Overdefined resources (e.g., SystemUI can ignore external styles).
  • ๐Ÿ“‹ Is the version compatible? MIUI with your topic (themes for MIUI 12 may not work on the MIUI 14).
  • ๐Ÿ”ง Are there additional patches (e.g, MIUI Mix for deep customization).

For debugging, use logcat:

adb logcat | grep -i "theme"

This will help to identify errors in resource loading.

FAQ: Frequent questions about creating themes for the Redmi Note 8

Can I create a theme without root rights?
Yes, but with serious limitations. Without root, you can only change wallpaper, launcher icons and some colors through MIUI Theme Editor. Deep customization (modification of SystemUI, fonts, animations) requires root rights.
How to transfer a theme from one Xiaomi device to another?
Copy the.mtz file to /sdcard/MIUI/theme/ on the new device. Note that the themes may not display correctly on devices with a different screen resolution or MIUI version. For example, a theme with Redmi Note 8 (FHD+) will not work for Redmi 9A (HD+).
Why does the wallpaper disappear after installing the theme?
This happens if the description.xml file does not specify paths to the wallpaper or it is in an unsupported format. Check that the wallpaper is in the assets/wallpapers/ folder and has the screen resolution corresponding to the screen (2340ร—1080 for the Redmi Note 8).
How to return a standard theme if the custom theme broke the interface?
Go to Settings โ†’ Theme โ†’ Standard. If the interface doesn't respond, boot to TWRP and delete the /data/system/theme/ folder, then clear the cache. In extreme cases, reflash the firmware through fastboot.
Where to download ready-made templates for MIUI?
Templates can be found on the forums: XDA Developers (section Xiaomi Themes) 4PDA (themes for MIUI) GitHub (open source repositories) Pay attention to the MIUI version and device model in the template description.