Theme System
The Pawkey’s theme system is quite extensible you can change a lot of the app look with it.
You can change:
- App color palette
- Entire UI border-radius
- Blur intensity
We support both dark and light themes.
Examples
Dark
{
"name": "Pawkey Dark",
"description": "Default dark theme for Pawkey",
"author": "Ryowuff",
"theme": {
"bg": "#0C0C0C",
"fg": "#EFDFF6",
"darker": "#B7B2BE",
"fgOnAccent": "#0C0C0C",
"panel": "#131212",
"panelLighter": "$panel*1.2",
"header": "$panel/0.3",
"popup": "#141414",
"border": "#212121",
"accent": "#C6A9FF",
"link": "#9566FF",
"mention": "#9566FF",
"mentionMe": "#6A29FF",
"reboop": "#8755F2",
"red": "#FF6E6E",
"green": "#95FF82",
"yellow": "#FFC382",
"blue": "#85A7FF",
"button": "#1A1919",
"switch": "$panel*1.5",
"slider": "$panel*1.5",
"buttonHover": "#2A2929",
"buttonGhost": "$button/0.1",
"accentGhost": "$accent/0.2",
"accentGhost2": "$accent/0.4",
"redGhost": "$red/0.2",
"redGhost2": "$red/0.4",
"greenGhost": "$green/0.2",
"yellowGhost": "$yellow/0.2",
"blueGhost": "$blue/0.2",
"navActive": "$button/0.3",
"panelGhost": "$panel/0.9",
"reboopGhost": "$reboop/0.2"
},
"borderRadius": {
"vm": "5px",
"xs": "7px",
"sm": "9px",
"normal": "10px",
"md": "12px",
"lg": "15px",
"xl": "18px",
"ellipse": "15px",
"full": "25px"
},
"blur": {
"normal": "10px",
"medium": "15px",
"strong": "20px"
}
} Light
{
"name": "Pawkey Light",
"description": "Default light theme for Pawkey",
"author": "Ryowuff",
"theme": {
"bg": "#FFFFFF",
"fg": "#1A1A1A",
"darker": "#9A9A9A",
"fgOnAccent": "#000000",
"panel": "#F5F5F5",
"panelLighter": "$panel*1.2",
"header": "$panel/0.3",
"border": "#E0E0E0",
"popup": "#FFFFFF",
"accent": "#8B5CF6",
"link": "#9566FF",
"mention": "#9566FF",
"mentionMe": "#6A29FF",
"reboop": "#8755F2",
"red": "#DC2626",
"green": "#16A34A",
"yellow": "#CA8A04",
"blue": "#2563EB",
"button": "#F0F0F0",
"switch": "$panel*1.5",
"buttonHover": "#E5E5E5",
"slider": "$panel*1.5",
"buttonGhost": "$button/0.1",
"accentGhost": "$accent/0.2",
"accentGhost2": "$accent/0.4",
"redGhost": "$red/0.2",
"redGhost2": "$red/0.4",
"greenGhost": "$green/0.2",
"yellowGhost": "$yellow/0.2",
"blueGhost": "$blue/0.2",
"navActive": "$button/0.3",
"panelGhost": "$panel/0.9"
},
"borderRadius": {
"vm": "5px",
"xs": "7px",
"sm": "9px",
"normal": "10px",
"md": "12px",
"lg": "15px",
"xl": "18px",
"ellipse": "15px",
"full": "25px"
},
"blur": {
"normal": "10px",
"medium": "15px",
"strong": "20px"
}
} The same themes can be found on the repository
Variables
We support variables $panel, you can use it like this:
"theme": {
"button": "$panel"
} It will inherit the same color value as panel.
You can also lighten / darken colors in a simple way
$panel*1.3 - lighten
$panel/0.4 - darken
The usage in the theme is:
"theme": {
"button": "$panel/0.8",
"buttonHover": "$panel*1.3"
} The way darkening works is by making the color more transparent
Theme testing
You can test the theme you made on an Pawkey instance itself in your user settings.
Its in Settings > Themes, there you can add your own custom theme json and test your theme / edit.
After you adjust the theme to your liking you can just use it, Themes also sync between clients through the Registry.
Setting the theme instance wide
After you created your theme you might want to set it instance-wide, You can do that in the Admin Dashboard.
You can set in Admin > Branding > Themes, just paste the json and save and reload the page. The theme should apply instantly.

