Repository navigation
Serve Marketplace icons from the brand folder of custom integrations - #11283
Merged
Merged
Conversation
11 of 21 tasks
frenck
marked this pull request as ready for review
October 8, 2026 19:17
5 of 12 tasks
balloob
approved these changes
Oct 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed change
Custom integrations no longer add their images to this repository; they ship them in a
brandfolder of their own (see the Brands Proxy API announcement linked above). Home Assistant shows those once the integration is installed, but the Marketplace shows integrations before that, so most of them get the placeholder today.This serves those brand folders on a path of their own,
/marketplace/<domain>/<image>, which only the Marketplace uses. Nothing changes for the existing paths. It is a stopgap until the Marketplace gets a backend that can provide these images itself.How it works:
/marketplace/<domain>/<image>from the repository of the integration. Once an integration is installed, Home Assistant serves its own brand folder instead.netlify/marketplace-icons-blocklist.jsonturns off the images of a single integration.Numbers from a local run: 1036 Marketplace integrations are not in this repository, 943 of those ship a brand folder.
This adds Node.js tooling to the repository:
package.json, TypeScript functions undernetlify/, tests withnode:test, a workflow that type checks and tests them, and Renovate now also updates npm dependencies. The README has a section on all of it.To try the Deploy Preview: run
marketplace-icons-synca few times through "Run now" in the Netlify UI to fill the index all Deploy Previews share (previews never touch the production one), then request/marketplace/<domain>/icon.pngfor an integration from the Marketplace.Type of change
Additional information
Checklist
icon.png)icon@2x.png)logo.png)logo@2x.png)