Wait, Are You Still Using *Vanilla* QGIS?
Shinsuke Nakamori

Shinsuke Nakamori @shinsuke

About: GIS Engineer

Joined:
Feb 10, 2025

Wait, Are You Still Using *Vanilla* QGIS?

Publish Date: Aug 13
1 0

Yes, the title is a bit provocative—but if you clicked on this, chances are you’re already a regular QGIS user.

So, go ahead. Fire up the QGIS you use every day.

You probably see something like this:

Now, let me ask you one thing:

"Are you really satisfied with how it looks?"

If the answer is “not really,” by the end of this article you’ll be able to customize QGIS’s appearance into something like this:

How to Change QGIS’s Look

Many of you probably already know that QGIS’s GUI is built using Qt.

If you’ve ever created a QGIS plugin in PyQGIS, you’ve probably written imports like:

from PyQt5.QtWidgets import QDialog
Enter fullscreen mode Exit fullscreen mode

So it’s only natural to think:

“If QGIS uses Qt, couldn’t I just tweak its GUI using Qt features?”

Let’s try it.
Open QGIS’s Python console and bring up the editor:

Now, enter this code and hit the ▶ run button:

iface.mainWindow().setStyleSheet("background-color: #333; color: #32cd32;")
Enter fullscreen mode Exit fullscreen mode

Oh, Whole new vibe.

Since QGIS’s mainWindow is a Qt widget, you can forcibly apply styles using setStyleSheet.

Once you understand that, you know what comes next:

“Let’s go wild with StyleSheets and make QGIS truly our own.”

So I Made It a QGIS Plugin

At first, I was just playing around with StyleSheets. But as the number of tweaks grew—and as I thought it might be fun to let you customize QGIS too—I turned it into a plugin.

https://plugins.qgis.org/plugins/QGISDresser/#plugin-about

Installation

Installation is just like any other QGIS plugin. Search for “Dresser” and you should find it right away.

Usage

You can launch it only from the Plugins menu.
I intentionally avoided adding a toolbar button so it wouldn’t clutter your GIS workflow.

The dialog is kept as simple as possible—there’s not much to configure.

Use preset
→ Choose from pre-registered presets.

Use image
→ Use your own image as the background. You can also pick text color (black or white) so it stays readable.

In either case, once you set a background and click OK, QGIS’s appearance changes instantly.

It’s so straightforward that you’ll get the hang of it almost instantly.

Creating Background Images

If you want to use your own image as a background, there’s a little trick to it.

Right now, QGISDresser stretches the image to fill the entire QGIS window size.
So, if you want something like your favorite character appearing in the layer panel area, you’ll need to prepare an image with enough empty space for proper positioning.

It’s easier to show than to tell:

  1. Take a screenshot of your QGIS window and paste it into PowerPoint.
  2. Place your character image where you want it to appear.
  3. Create a rectangle the same size as the QGIS screenshot and fill it with your desired background color.
  4. Select both the character and rectangle, right-click, and choose “Save as Picture.”
  5. Load that image into QGISDresser—and done!

Editing Presets

Here’s a secret: the presets in QGISDresser are editable.

Just open the QGISDresser installation folder, go into preset/, and you’ll find a list.yml file that defines the presets:

styles:
  - name: "simple-blue-white"
    char-color: "white"
    treeview-color: "rgba(128, 128, 128, 0.6)"
    main-color: "#0000FF"
    main-image: "transparent"
    main-position: "right"
    btn-color: "white"
    btn-image: "transparent"
    btn-position: "top"
Enter fullscreen mode Exit fullscreen mode

You can set parameters like:

  • name → Display name in the preset list
  • char-color → Text color (not limited to black/white)
  • treeview-color → Layer panel background (use some transparency so the background shows)
  • main-color → Main background color
  • main-image → Main background image
  • main-position → Alignment of the main background image
  • btn-color → Button background color
  • btn-image → Button background image
  • btn-position → Alignment of the button background image

To add a custom preset:

  1. Put your image in the images/ folder.
  2. Add a new entry to list.yml.

Example:

  - name: "Sample"
    char-color: "black"
    treeview-color: "rgba(200, 200, 200, 0.6)"
    main-color: "transparent"
    main-image: "sample.png"
    main-position: "center"
    btn-color: "transparent"
    btn-image: "transparent"
    btn-position: "top"
Enter fullscreen mode Exit fullscreen mode

Conclusion

I released this plugin mainly because I thought it would be fun.
It probably still has plenty of bugs, so if you notice anything or have feature requests, please open an issue here:

https://github.com/nakamori1024/QGISDresserPlugin

Comments 0 total

    Add comment