Skip to content

fix: give the plugin icons Photon's solid backgrounds - #5

Merged
gtxy27 merged 1 commit into
mainfrom
felix/eng-4374-give-the-dify-plugin-icons-photons-solid-backgrounds
Oct 23, 2026
Merged

gtxy27 merged 1 commit into
mainfrom
felix/eng-4374-give-the-dify-plugin-icons-photons-solid-backgrounds

Conversation

@gtxy27

@gtxy27 gtxy27 commented Oct 23, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

The icons of the three plugins (the tool plugin, trigger/, and bot/) drew only the Photon mark on a transparent background: black in icon.svg, white in icon-dark.svg. The light icon disappeared on a dark surface and the dark icon on a light one, so every Dify surface had to pick the matching variant. Each icon now fills its square with a solid background, as Dify's official plugin icons do (for example, white squares in the light icons of GitHub and Slack, and a dark square in Slack's dark icon), in the colors of photon.codes' favicons.

Closes ENG-4374

Before and after

File Before After
icon.svg (light) #000000 mark, transparent background #101010 mark on a solid #FFFFFF square
icon-dark.svg (dark) #FFFFFF mark, transparent background #FFFFFF mark on a solid #101010 square

The colors are sampled from photon.codes: its light favicon is a white tile with a #101010 mark, and its dark favicon a #101010 tile with a white mark. The square covers the whole viewBox, so no pixel is transparent; Dify rounds the corners where it shows icons. The mark keeps its size and position. The three plugins keep sharing the same two files.

Testing

  • Rendered both icons on a mid-gray background: no gray shows through either square, and each mark stays visible on white and on dark backgrounds.
  • The manifests' icon and icon_dark files exist and are not the template icon, which are the checks of check-plugin-icons.sh in langgenius/dify-official-plugins.
  • Packed each plugin from the tracked files with the Dify CLI 0.6.11; each package contains both icons.
  • The unit tests of the three plugins pass.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith with what you need.

The icons drew only the mark on a transparent background, so the light icon disappeared on dark surfaces and the dark icon on light ones. Each icon now fills its square, as Dify's official icons and photon.codes' favicons do: the #101010 mark on white, and the white mark on #101010.
Copilot AI balanced review requested due to automatic review settings October 23, 2026 01:42
@linear-code

linear-code Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
ENG-4374 Give the Dify plugin icons Photon's solid backgrounds

The three Dify plugins in photon-hq/dify (the tool plugin at the root, trigger/, and bot/) use _assets/icon.svg and _assets/icon-dark.svg with a transparent background: they draw only the Photon mark, black in the light icon and white in the dark one. The light icon disappears on a dark background and the dark icon on a light one, so the icons depend on every Dify surface picking the matching variant.

Dify's official plugins draw their mark on a solid square, for example a white square in the light icons of GitHub and Slack and a dark square in Slack's dark icon. photon.codes uses solid tiles for its favicons as well: a white tile with a #101010 mark for light mode, and a #101010 tile with a white mark for dark mode.

Done when:

  • Each plugin's light icon is the #101010 Photon mark on a solid white square, and its dark icon is the white mark on a solid #101010 square, with no transparent pixels.
  • The icons still pass the icon checks of Dify's plugin repositories: the declared files exist, and they are not the template icon.

Review in Linear

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review any files in this pull request. Check if the Files changed in this pull request are included in default exclusions.

@coderabbitai

coderabbitai Bot commented Oct 23, 2026

Copy link
Copy Markdown

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters: 6
  • _assets/icon-dark.svg is excluded by !**/*.svg
  • _assets/icon.svg is excluded by !**/*.svg
  • bot/_assets/icon-dark.svg is excluded by !**/*.svg
  • bot/_assets/icon.svg is excluded by !**/*.svg
  • trigger/_assets/icon-dark.svg is excluded by !**/*.svg
  • trigger/_assets/icon.svg is excluded by !**/*.svg

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

⚙️ Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Team
  • Run ID: 1647891c-0304-4fdc-a778-ef57820d8e6a

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@gtxy27
gtxy27 merged commit 0a4aa94 into main Oct 23, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants