---
obj: application
os: linux
repo: https://github.com/dylanaraps/pywal
---
# pywal
Pywal is a tool that generates a color palette from the dominant colors in an image. It then applies the colors system-wide and on-the-fly in all of your favourite programs.
There are currently 5 supported color generation backends, each providing a different palette of colors from each image. You're bound to find an appealing color-scheme.
Pywal also supports predefined themes and has over 250 themes built-in. You can also create your own theme files to share with others.
The goal of Pywal was to be as out of the way as possible. It doesn't modify any of your existing configuration files. Instead it works around them and provides tools to integrate your system as you see fit.
Terminal emulators and TTYs have their color-schemes updated in real-time with no delay. With minimal configuration this functionality can be extended to almost anything running on your system.

## Customization
### [dwm](../../desktops/dwm.md)
[dwm](../../desktops/dwm.md) is configured in source code. the color palette is exported to `~/.cache/wal/colors-wal-dwm.h`

### dmenu
dmenu color palette is at `~/.cache/wal/colors-wal-dmenu.h`

### [alacritty](../../cli/alacritty.md)
color configs for [alacritty](../../cli/alacritty.md) can be generated with [this script](https://github.com/egeesin/alacritty-color-export). One must manually convert the output to [TOML](../../../files/TOML.md) though.

### [JSON](../../../files/JSON.md) & YAML
Generic color palettes are available as [JSON](../../../files/JSON.md) and YAML at:
`~/.cache/wal/colors.json` & `~/.cache/wal/colors.yml`