License Last Commit JavaScript Styled with CSS

I am archiving this project because I no longer have a Hubitat to test with. Mine died and I am now just running everything through the alexa hub.

Hubitat Dark Theme

A custom dark mode JavaScript-injected theme for Hubitat’s admin interface. This method overrides the default light UI without modifying Hubitat itself. Ideal for use with reverse proxies like Nginx Proxy Manager (NPM), Caddy, or Traefik — or manually via browser extensions.

✅ No need to modify Hubitat firmware or dashboards
✅ Automatically injects and applies a full dark mode stylesheet


Features


Installation Options

This is the most powerful and persistent way to apply the dark theme.

✅ Requirements

✅ Example for Nginx Proxy Manager

  1. Host your JavaScript injector file somewhere public, e.g.:
https://yourdomain.com/hubitat/theme-inject.js
  1. Add this to your Custom Nginx Configuration in NPM:
sub_filter '</body>' '<script src="https://yourdomain.com/hubitat/theme-inject.js"></script></body>';
sub_filter_once off;
sub_filter_types text/html;
proxy_set_header Accept-Encoding "";

This injects the JavaScript file at the bottom of every Hubitat page.

  1. The JS file dynamically adds the dark theme CSS to <head> when the page loads.

🧩 Option 2: Browser Extension Injection

For testing or personal use without a reverse proxy.

Use extensions like:

Paste in this injection code or link to the hosted JS file.


Hosting the Script

You can host the injector JS file (theme-inject.js) on:

Example GitHub Pages URL:

https://yourgithubusername.github.io/hubitat-dark/theme-inject.js

What Should Be In theme-inject.js

Example content for the injector file:

// hubitat/theme-inject.js
(function () {
  const cssUrl = 'https://yourdomain.com/hubitat/hubitat-dark.css';
  const link = document.createElement('link');
  link.rel = 'stylesheet';
  link.href = cssUrl;
  document.head.appendChild(link);
})();

Be sure to replace the CSS URL with your actual hosted theme path.


Screenshots

📸 These screenshots show the theme applied via JS injection through a reverse proxy.

Menu
Devices


Tips & Compatibility


📜 License

MIT – Free to use, share, or modify.
Not affiliated with Hubitat Elevation.


🛠 Made By

ChilSoft.com — fueled by caffeine and irrational CSS decisions.


⚠️ Disclaimer

This site and theme are provided “as-is” for educational and informational purposes only.
Use at your own risk. We are not responsible for device issues, bricked hubs, lost Z-Wave networks, etc.

© 2025 ChilSoft. All rights reserved.