Skip to content

Theming 101

NotAShelf edited this page Jan 12, 2023 · 2 revisions

This page will introduce you to the basics of creating your very own theme, while following the best practices in order to make the approval process faster.

Getting started

For organization purposes, we do not recommend that you base a theme off of your own dotfiles - instead, you may (and should) opt into creating a new folder and initializing a fresh project using hyprtheme init, this will create the sample theme.toml in your current directory. After initializing a theme project, you will want to create a themeName.conf based on the config format of Hyprland. In this file, you will want settings associated with your theme.

Those settings may include:

  • Gaps
  • Border color(s)
  • Border Size
  • Drop shadows
  • Animations
  • Beziers
  • Rounding
  • Blur settings

Those settings should not include:

  • Your personal exec/exec-once lines
  • Keybinds (unless it is an integral part of the theme)
  • Global windowrules
  • Layout settings
  • Anything that is not related to the integrity of the theme

Additionally, you may choose to include if you prefer:

  • Wallpapers
  • Scripts (that improve overall look & feel)
  • Settings for other programs (i.e Waybar or Eww)

Testing your theme

Before submitting your theme, we would prefer that you test your theme configurations with a fresh Hyprland config. To test without having to use any external tools, start Hyprland with a fresh configuration file and source your theme file in that config. Remove conflicting settings from the fresh Hyprland config. Repeat this process for any additional programs you have decided to add configuration files for.

Submitting your theme

See Adding your theme

Why?

todo

This repository exists with the purpose of collecting and publicly archiving themes created by the awesome Hyprland community.

Hyprtheme Wiki

Clone this wiki locally