nextcloud-server/apps/theming
Ferdinand Thiessen 4a63bd2068
Merge pull request #56039 from nextcloud/fix/theming-legacy-app-config
fix(theming): use IAppConfig for all ThemingDefaults
2025-11-01 18:13:11 +07:00
..
appinfo
composer fix(theming): use IAppConfig for all ThemingDefaults 2025-10-28 14:58:17 +07:00
css
fonts
img
js
l10n fix(l10n): Update translations from Transifex 2025-10-31 00:13:46 +07:00
lib refactor(theming): migrate `ThemingDefaults` to `OCP\AppFramework\Services\IAppConfig` 2025-11-01 14:16:40 +07:00
src fix: migrate to non-deprecated dialog props 2025-10-16 17:55:11 +07:00
templates
tests refactor(theming): migrate `ThemingDefaults` to `OCP\AppFramework\Services\IAppConfig` 2025-11-01 14:16:40 +07:00
.l10nignore
README.md
REUSE.toml
openapi.json
openapi.json.license

README.md

Theming

Background picture requirements

A reference to why it was very difficult to actually find good background pictures there are quite some requirements when it comes to picking:

  • It needs to be an exceptionally good photo of course since when chosen, people will see it every day.
  • We need to have a good balance of different motives, e.g. not too many landscape pics.
  • Same for a good balance of different colors.
  • The photo needs to work as a background. Photos with objects focused in the middle dont really work as they will be overlapped by the widgets and content anyway.
  • Especially the top part cannot have too much differing contrast, as then its not possible to see the navigation icons.
  • Especially the top part should be either dark-ish or light-ish, but not a shade exactly inbetween because then contrast can neither be achieved with light nor dark icons.
  • We serve the pictures at 4k resolution and most of the selected images are also available in 6k or higher so it is future-proof.
  • For the search of course we had to limit to CC0, CC By and CC By-Sa. Only CC0 would have been practically impossible cause theres just not so many good ones which fit.
  • Good pages to find photos are StockSnap, Wikimedia Commons, Openverse and Flickr (with license "commercial use & mods allowed"), sorting by interesting or downloads. Most others like Unsplash, Pexels, Pixabay, etc. meanwhile have a non-standard license.

Background picture technicals

  • All backgrounds are sized to maximum 3840px width (4K resolution).
  • To ensure quick loading times, the image needs to be compressed, ideally to around 1 MB or less. E.g. via 9095% quality in GIMP export. We could also explore using newer formats.
  • Previews are sized to 352px width (min height 192px), which is double of the current picker grid size so it looks nice on high-res displays. Quality is also set to around 90% at export.
  • Newer background images are compressed using WebP and a quality of 90 (cwebp -q 90 -o ... ...)

Background picture credits

In img/background/: