How to Install a theme.park Theme for Your App
Updated
theme.park offers 48 themed applications and several installation paths. The right one depends on how your app is deployed: if you run a linuxserver.io container, use the custom Docker mod; if you run select Hotio containers, use the provided custom scripts; if you want to inject CSS through a reverse proxy, use subfiltering with Nginx, Apache, Caddy, or Traefik; and if you prefer to serve the CSS yourself, a Docker image for self-hosting the CSS files is available. Each theme has its own documentation page, so confirm your specific app is covered before starting.
Before you begin
- Identify your app's deployment type (linuxserver.io, Hotio, or another container/webserver setup).
- Check the theme's documentation page to confirm the app is supported and to see any theme-specific addons.
- Note that some themes include CSS addons, which may require extra configuration beyond the base theme.
Method 1: Docker mod for linuxserver.io containers
This is the most direct route for linuxserver.io images.
- Open the documentation page for your specific app to find its theme name and any mod-specific variables.
- Add the theme.park Docker mod to your container configuration, following the variables listed in that app's docs.
- Recreate the container so the mod is applied.
- Verify: load the app in your browser and confirm the theme is active. If it isn't, check the container logs for mod errors and confirm the mod variables match the documentation.
Common snag: applying a mod for a different app's theme, or missing a required variable, will leave the default styling in place.
Method 2: Custom scripts for select Hotio containers
Hotio containers are supported through custom scripts, but only for select containers.
- Check the app's documentation page to confirm a Hotio script exists for it.
- Run the script as described in that app's docs.
- Verify: refresh the app and confirm the theme loads; if not, re-check that you used the script for the correct container.
Common snag: assuming every Hotio container is supported. The site describes scripts as available for select Hotio containers only.
Method 3: Subfiltering through your reverse proxy
If your app is fronted by a webserver, you can inject the theme's CSS at the proxy layer. theme.park provides examples for Nginx, Apache, Caddy, and Traefik.
- Find the subfiltering example for your webserver and the documentation for your app's theme.
- Add the subfilter rule to your proxy configuration, pointing at the theme's CSS.
- Reload the proxy.
- Verify: open the app through the proxy (not directly) and confirm the theme applies. If it doesn't, confirm the CSS URL is reachable and the subfilter is actually matching the app's HTML response.
Common snag: testing against the app directly instead of through the proxy, or a proxy config that doesn't pass the modified response through.
Method 4: Self-host the CSS with the Docker image
If you'd rather not rely on external CSS delivery, theme.park offers a Docker image for self-hosting the CSS files.
- Deploy the CSS Docker image per its documentation.
- Point your chosen installation method (mod, script, or subfilter) at your self-hosted CSS location.
- Verify: load the app and confirm styling resolves from your own instance.
Choosing a method
| Your setup | Recommended method | Why |
|---|---|---|
| linuxserver.io container | Docker mod | Built for these containers; least manual config |
| Select Hotio container | Custom script | The supported path for those images |
| App behind Nginx/Apache/Caddy/Traefik | Subfiltering | Applies the theme at the proxy without changing the app |
| Want local control of CSS files | CSS Docker image | Serves the stylesheets yourself |
Getting help and contributing
If a theme misbehaves, report it on the project's GitHub. For live support, the project points users to its Discord community. If you've built a color scheme worth sharing, the project invites pull requests for community themes, and official theme options are listed alongside them on the site.