- From: carlosjeurissen <notifications@github.com>
- Date: Thu, 22 Jan 2026 10:44:22 -0800
- To: w3c/manifest <manifest@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <w3c/manifest/issues/975/3786087293@github.com>
carlosjeurissen left a comment (w3c/manifest#975)
We could go for a hybrid approach. Keep localised as is, introduce `dark_theme` for colors, retract `icons_localized` and further spec out a flat `icons` list to the likes of `icon_variants` from webExtensions.
### Localised text properties as specified
This has ideal language negotiation and allows setting metadata like the dir. Perfect for text-specific properties.
```json
{
"lang": "de",
"name": "Coole App",
"name_localized": {
"en": "Cool App",
"ar": {"value": "تطبيق رائع", "dir": "rtl" }
}
```
### Global `dark_theme` property for color theme specific properties
As proposed in https://github.com/w3c/manifest/issues/975#issuecomment-3754426877
`dark_theme` would remove any connection with `color_scheme` removing the implication of supporting other `color_scheme` overrides. `dark_theme` would also be more flexible for future additions compared to `dark_colors`.
```json
{
"theme_color": "blue",
"background_color": "#fff",
"dark_theme": {
"theme_color": "lightblue",
"background_color": "#000"
}
}
```
### Flat list for `icons`
Drop the `icons_localised` and no support for `dark_theme.icons`. As this would create dozens of buckets. For which a proper algorithm would need to be determined, potentially requiring developers to repeat big chunks of icon declarations across every bucket. See concerns in https://github.com/w3c/manifest/issues/975#issuecomment-3754425660
We could use a flat list inspired by the webExtensions `icon_variants`. We can go for other algorithms like most specific and/or prioritise specific filters. However, having one flat list prevents many of the issues mentioned above.
```json
"icons": [
{
"src": "cyrl-dark-512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable",
"color_schemes": ["dark"],
"lang": ["ru", "uk", "be"]
},
{
"src": "cyrl-dark-192.png",
"sizes": "192x192",
"type": "image/png",
"color_schemes": ["dark"],
"lang": ["ru", "uk", "be"]
},
{ "src": "def-512.png", "sizes": "512x512" },
{ "src": "def-192.png", "sizes": "192x192" }
]
```
> @christianliebel What would the exact proposal be?
We can further discuss the specifics for dark icons / localised icons. For the lang attribute, we can consult the i18n folks for the icons flat list.
However I do not see it as a blocker for `dark_theme`, with the exception of making sure `dark_theme.icons` is explicitly blocked for now. And we retract or at least delay implementation of `icons_localised` until further discussion.
--
Reply to this email directly or view it on GitHub:
https://github.com/w3c/manifest/issues/975#issuecomment-3786087293
You are receiving this because you are subscribed to this thread.
Message ID: <w3c/manifest/issues/975/3786087293@github.com>
Received on Thursday, 22 January 2026 18:44:26 UTC