Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
854ae77
fix(nzbget): restore checkbox, modal and hover styles
GilbN Sep 13, 2026
48195df
Merge pull request #726 from themepark-dev/fix/nzbget-checkboxes
GilbN Sep 13, 2026
d4c0c4b
chore: add CSS maintenance workflow and NZBGet setup
GilbN Sep 13, 2026
7977a4a
Merge pull request #727 from themepark-dev/chore/css-maintenance-work…
GilbN Sep 13, 2026
494b069
Restore Bazarr themes after the Mantine update
GilbN Sep 13, 2026
09511e1
Add a local Bazarr fixture and debugging notes
GilbN Sep 13, 2026
e29b682
Merge pull request #728 from themepark-dev/fix/bazarr-themes
GilbN Sep 13, 2026
703e15f
Refresh Dozzle themes for version 11
GilbN Sep 14, 2026
6a988c1
Add a local Dozzle fixture and debugging notes
GilbN Sep 14, 2026
720df69
Add a Whisparr 4K logo addon
GilbN Sep 14, 2026
65b2d31
Add a local Whisparr development setup
GilbN Sep 14, 2026
ac69a89
Merge pull request #729 from themepark-dev/fix/dozzle-themes
GilbN Sep 14, 2026
45e0c7e
Merge pull request #730 from themepark-dev/feat/whisparr-4k-logo
GilbN Sep 14, 2026
580198b
Document reusable lessons from theme maintenance
GilbN Sep 14, 2026
968f7be
Merge pull request #731 from themepark-dev/docs/session-learnings
GilbN Sep 14, 2026
c2a11bb
Restore Pi-hole network activity colors
GilbN Sep 14, 2026
3b5ca5b
Add a Pi-hole network debugging fixture
GilbN Sep 14, 2026
9aaa9d6
Soften Pi-hole table and panel borders
GilbN Sep 14, 2026
8fda442
Merge pull request #732 from themepark-dev/fix/pihole-network
GilbN Sep 14, 2026
376aee3
fix(ombi): make Latte form and filter text readable
GilbN Sep 14, 2026
2001b22
dev(ombi): add local CSS reproduction setup
GilbN Sep 14, 2026
aa0aee9
Merge pull request #733 from themepark-dev/fix/715-ombi-latte-text
GilbN Sep 14, 2026
c50c30e
Rewrite Nginx Proxy Manager theme for the React UI
GilbN Sep 14, 2026
7a76426
Add NPM development setup and theme variable checks
GilbN Sep 14, 2026
e59bd53
Require PR screenshots and add NPM before and after evidence
GilbN Sep 14, 2026
ff68b5e
Merge pull request #734 from themepark-dev/fix/npm-ui-707
GilbN Sep 14, 2026
1547ae7
Refresh Jellyfin 12 theme and dashboard colors
GilbN Sep 14, 2026
3eb4a20
Add Jellyfin development fixture and verification notes
GilbN Sep 14, 2026
8721ed4
Merge pull request #735 from themepark-dev/fix/jellyfin-12
GilbN Sep 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@

## Bug fixes

- When submitting bugfixes please show a before and after screenshot of the fix, and a description of what the fix does.
- PR descriptions for visual changes must include before/after screenshots and a short description of the fix. This applies to bug fixes, theme rewrites, and documentation gallery updates.
- Use comparable app states, theme options, and viewport sizes. Embed the images in the description; local-only screenshots do not meet this requirement.
- Changes with no visible result, such as workflow instructions, do not need screenshots.

## New theme option

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/minify-and-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,23 +72,23 @@ jobs:
publish_dir: ./
publish_branch: live
github_token: ${{ secrets.GITHUB_TOKEN }}
exclude_assets: ''
exclude_assets: 'dev,AGENTS.md'
- name: Deploy Develop
uses: peaceiris/actions-gh-pages@v3.9.3
if: ${{ github.ref == 'refs/heads/develop' || github.event.inputs.branch == 'develop' }}
with:
publish_dir: ./
publish_branch: live_develop
github_token: ${{ secrets.GITHUB_TOKEN }}
exclude_assets: ''
exclude_assets: 'dev,AGENTS.md'
- name: Deploy Testing
uses: peaceiris/actions-gh-pages@v3.9.3
if: ${{ github.ref == 'refs/heads/testing' || github.event.inputs.branch == 'testing' }}
with:
publish_dir: ./
publish_branch: live_testing
github_token: ${{ secrets.GITHUB_TOKEN }}
exclude_assets: ''
exclude_assets: 'dev,AGENTS.md'
- name: Clear CF Cache
run: |
curl -X GET "https://api.cloudflare.com/client/v4/user/tokens/verify" \
Expand Down
77 changes: 77 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Working on theme.park

This project injects CSS into other applications. Reproduce CSS bugs in the
affected app and inspect the result in a browser.

## Maintainer instructions

- Use `admin` / `admin` for disposable development app logins. If an app enforces an email address or a longer password, use `admin@example.com` and `adminadmin` as needed, and document the exception and login beside its startup URL.

- Do not push, publish, deploy, or trigger deployment workflows without an
explicit instruction from the maintainer. Describing their usual release
workflow does not authorize a push. Keep trial-run work local and reviewable.
- Preserve existing work. Inspect the working tree before editing or changing
branches; do not reset unrelated changes.
- Always create task branches from freshly fetched `origin/develop`, including
CSS fixes and development tooling. Verify the starting commit before editing.
The normal flow is a task branch from `develop`, then a merge back into
`develop`. Target pull requests at `develop` as well.
- Reserve `testing` for potentially breaking changes that need isolation from
users of `develop`. It is not a required step for ordinary fixes. Users of
`testing` accept disruption; protecting them is not a release constraint.
- Add development tools when an app needs them. Record setup steps in
`dev/<app>/README.md` so the next session can reuse them.
- Document discoveries that would help another session before finishing a task.
Put shared workflow lessons in `dev/README.md` and app-specific lessons in
`dev/<app>/README.md`. Apply the `unslop` skill to these notes. Explain what
happened, why it matters, and how to reproduce or avoid it. Update existing
guidance instead of duplicating it, and distinguish verified findings from
untested ideas. Keep run-specific evidence under ignored `dev/artifacts/`.
- Always apply the `unslop` skill to writing. Keep PR titles and descriptions
short, stating the user-visible fixes and relevant validation. Before/after
screenshots are required in PR descriptions for visual changes, including
bug fixes and theme rewrites. Show the affected UI in comparable states.
The skill source is
[cursor/plugins unslop](https://raw.githubusercontent.com/cursor/plugins/refs/heads/main/pstack/skills/unslop/SKILL.md).

## Read before starting

1. Read [.github/CONTRIBUTING.md](.github/CONTRIBUTING.md).
2. Read [dev/README.md](dev/README.md) and any `dev/<app>/README.md`.
3. Consult the [setup docs](https://docs.theme-park.dev/setup/), the target app's
documentation page, and its entry in
[mkdocs.yml](https://github.com/themepark-dev/tp-docs/blob/main/mkdocs.yml).
The documentation source is the separate
[tp-docs repository](https://github.com/themepark-dev/tp-docs).
Check app-specific exceptions before using a generic installation recipe.
4. Read the issue, relevant base CSS, its imports, and recent fixes. Record the
reported app version and installation method. Check whether an existing
commit already addresses the issue.

## Implementation and verification

- Follow `dev/README.md`. Reuse the app's setup or add one with sample data and
startup commands.
- Edit `css/base/<app>/<app>-base.css` for app-specific styling. Inspect shared
files in `css/defaults` before changing them. Servarr apps share styles.
- Use existing variables in `css/theme-options` and
`css/community-theme-options`. Preserve their value formats and the meaning
of status colors. Scope overrides to the affected component where possible.
- Generated `<app>/<theme>.css` wrappers come from `themes.py`. Do not hand-edit
generated output or populate the working tree with build artifacts.
- Confirm the browser loads the edited local stylesheet and its imports.
Verify the final files through the documented injection method, even if you
used temporary browser styles while investigating.
- Save before/after screenshots and inspect the rendered result. Computed-style
assertions alone do not establish visibility, contrast, or correct layout.
- Test the affected interaction states, theme options, browsers, and viewport
sizes. Include solid-color, radial-gradient, and linear-gradient backgrounds.
Check the actual variables used by the component, not just the page background.
Follow the screenshot requirements in
CONTRIBUTING.md when adding a new application theme.
- Report app and browser versions, installation method, evidence, and untested
areas. Do not claim an issue fixed from a screenshot or source inspection alone.
- Add any setup requirements you discover to the app's development notes.
Record other UI defects found during inspection separately from the reported
bug. Explain which ones the patch fixes and which remain.
Target `develop` for contributions. Push only when the maintainer instructs you.
10 changes: 9 additions & 1 deletion css/addons/bazarr/bazarr-4k-logo/bazarr-4k-logo.css
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,12 @@

#root>div>header>div>div.bazarr-Group-root[class*="bazarr-"]>div>span:after {
content: " 4K";
}
}
/* Current Mantine frontend. */
.mantine-AppShell-header .mantine-Avatar-image {
content: url("/css/addons/bazarr/bazarr-4k-logo/bazarr4k.png");
}

.mantine-AppShell-header .mantine-Badge-root[data-variant="brand"] .mantine-Badge-label::after {
content: " 4K";
}
14 changes: 13 additions & 1 deletion css/addons/bazarr/bazarr-darker/bazarr-darker.css
Original file line number Diff line number Diff line change
Expand Up @@ -52,4 +52,16 @@
#root>div>div>main>div>div>div.bazarr-Group-root[class*="bazarr-"],
#root>div>div>main>form>div.bazarr-Group-root[class*="bazarr-"] {
background: #262626 !important;
}
}
/* Current Mantine frontend. */
.mantine-AppShell-header {
background: var(--header-color);
}

.mantine-AppShell-navbar {
background: var(--side-menu-color);
}

.mantine-AppShell-main .mantine-Group-root[class*="_group_"] {
background: var(--toolbar-background);
}
22 changes: 22 additions & 0 deletions css/addons/whisparr/whisparr-4k-logo/whisparr-4k-logo.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
/* Whisparr v2 and the compact Whisparr v3 header. */
img[class*="PageHeader-logo-"],
img[class*="PageSidebar-logo-"],
.panel-header > img.logo {
content: url("whisparr-4k.svg");
width: 32px;
height: 32px;
}

/* Whisparr v3 desktop header. */
img[class*="PageHeader-logoFull-"] {
content: url("whisparr-4k.svg");
width: 40px;
height: 40px;
}

img[class*="LoadingPage-logoFull-"] {
content: url("whisparr-4k.svg");
width: 48px;
height: 48px;
opacity: 1;
}
Loading
Loading