mirror of
https://github.com/louislam/uptime-kuma.git
synced 2026-03-02 22:57:00 -05:00
Theme status pages (and dashboard?) by defining "base colors" in Appearance setting #3237
Labels
No labels
A:accessibility
A:api
A:cert-expiry
A:core
A:dashboard
A:deployment
A:documentation
A:domain expiry
A:incidents
A:maintenance
A:metrics
A:monitor
A:notifications
A:reports
A:settings
A:status-page
A:ui/ux
A:user-management
Stale
ai-slop
blocked
blocked-upstream
bug
cannot-reproduce
dependencies
discussion
duplicate
feature-request
feature-request
good first issue
hacktoberfest
help
help wanted
house keeping
invalid
invalid-format
invalid-format
question
releaseblocker 🚨
security
spam
type:enhance-existing
type:new
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/uptime-kuma#3237
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @pro-sumer on GitHub (Apr 1, 2024).
📑 I have found these related issues/pull requests
Unable to find any related issue.
🏷️ Feature Request Type
Status-page
🔖 Feature description
It would be great if one can configure Uptime Kuma's "base colors" in the web interface, instead of manually overwriting many individual status page elements using CSS.
Bonus: also theme the dashboard this way.
✔️ Solution
Allow the user to define the hex/RGB values for the "base colors" in the Appearance section of Uptime Kuma's settings.
❓ Alternatives
A CSS solution that does not require overwriting many individual status page items would also be good, but unfortunately I don't know how to do that (if this is already possible, a Wiki entry on how to do it would be appreciated).
📝 Additional Context
N/A
@CommanderStorm commented on GitHub (Apr 1, 2024):
Currently, our system works by defining colours in SCSS in
src/assets/vars.scss.This is then used in most places (not quite all, PRs welcome)
The colours are then used at
src/assets/app.scssto override the defaults by bootstrap 5.The problem is that SCSS variables are not changeable at runtime (SCSS is compiled).
One option would be to change these to CSS variables.
I think changes like you did on https://status.prosumer.dev/ are somewhat out of scope.
If somebody has such special requirements, they will be reaching for the CSS guns anyway… => don't see a big payoff of spending lots of effort here..
@pro-sumer commented on GitHub (Apr 2, 2024):
That's what I thought. Thanks for confirming.
Luckily Uptime Kuma allows custom CSS. Thank you for that option.
@chakflying commented on GitHub (Apr 2, 2024):
We should consider moving from scss variables to css variables to allow customization in this way.
@tayflo commented on GitHub (Feb 25, 2026):
I've just noticed that beats are now drawn by canvas (
.heartbeat-canvas) instead of individual elements, and so it seems (but I might be missing something here) it's no longer possible to change their colors with custom CSS (it was possible in version 1.23.17).@CommanderStorm commented on GitHub (Feb 25, 2026):
Unfortunate that this broke your usage, we just did not think about this usecase.
You can still overide the colors via the CSS variables
--beat-empty-color, ..github.com/kurama/uptime-kuma@8ad09ccd13@tayflo commented on GitHub (Feb 26, 2026):
Very nice, thanks! I've been able to change the colors of the beats on the canvas using a syntax like that:
It's also nice that those values apply broadly, even if sometimes it is required to change the RGB triple instead, for instance for:
I'm not quite sure why this is necessary; in practice, I've just seen
--bs-bg-opacityset to 1. But I guess this exists to allow for some kind of flexibility.Even though, I've not been able to change the text color on the tooltip appearing on mouseover. The tooltip disappear dynamically so I've not been able to inspect the element.
And I guess it's unaffected by CSS variables because it's using the SCSS variables.
It's the same for the overall status icon but this one is more easily inspectable.
@CommanderStorm commented on GitHub (Feb 26, 2026):
Feel free to contribute a code change if you know a better version.
I have been wanting to reduce the extremely high number of custom CSS for a while, but have not come to it.
Changes to html and thus are not something that I consider public api since that is just way too hard to to controll.
If we can move most of those usecases to css variables, that would be much simpler.