# Icons! Icons Everywhere

**URL:** <https://platform.jetbrains.com/t/icons-icons-everywhere/4111>\
**Category:** Showcase & Feedback\
**Created:** [April 19, 2026, 8:21pm UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111 "2026-04-19T20:21:26Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![yuriy.artamonov](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/yuriy.artamonov/32/48_2.png) [@yuriy.artamonov](https://platform.jetbrains.com/u/yuriy.artamonov)\
**Post date:** [April 19, 2026, 8:21pm UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111/1 "2026-04-19T20:21:26Z")

</div>

You all probably know about

> **[IntelliJ Platform Icons](https://intellij-icons.jetbrains.design/)**

This where you [can get nice icons](https://blog.jetbrains.com/platform/2024/08/more-new-ui-icons-for-your-plugins/) for your plugins.

## Composing New Icons Based on Letters

But today I want to highlight an awesome website by @dseptimus . It produces custom IntelliJ-style letter icons for plugin developers:

> **[Letter Icon Composer](https://davidseptimus.github.io/letter-icon-composer/)**

 ![Letter Icon Composer](https://us1.discourse-cdn.com/flex001/uploads/jetbrains_platform/original/2X/e/e68e7c2bd24c0d320bef333f6ef44d3a8228540b.jpeg)

It is so easy to generate new letter-based icons now!

# Icons with Modifiers

One more thing I have recently build on my own - an easy way to combine icons and modifiers!

> **[IntelliJ Icon Blender](https://jreznot.github.io/intellij-icon-blender/)**

 ![IntelliJ Icon Blender](https://us1.discourse-cdn.com/flex001/uploads/jetbrains_platform/original/2X/d/d75f3ce70e2d34eab782b18977df5f590c080933.png)

Try it out! Build more!

---

<div class="post-metadata">

**Author:** ![dseptimus](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/dseptimus/32/2805_2.png) [@dseptimus](https://platform.jetbrains.com/u/dseptimus)\
**Post date:** [April 20, 2026, 12:47am UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111/2 "2026-04-20T00:47:07Z")

</div>

It also has a generic **Badge Composer** mode that allows you to add badges to an arbitrary base SVG, I just didn’t bother updating the name when I added that mode. 😄

 ![image](https://us1.discourse-cdn.com/flex001/uploads/jetbrains_platform/original/2X/3/3cd8337e56e9124c010b1c5ea21ddb465fe8258e.png)

---

<div class="post-metadata">

**Author:** ![lemming](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/lemming/32/60_2.png) [@lemming](https://platform.jetbrains.com/u/lemming)\
**Post date:** [April 20, 2026, 1:16am UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111/3 "2026-04-20T01:16:50Z")

</div>

This is awesome. I’m curious - how do the different projects implement cutouts for the badges? I jumped through some major hoops using Java2d to do that since it has nice CSG and offsetting operations. Does native SVG offer anything similar?

---

<div class="post-metadata">

**Author:** ![dseptimus](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/dseptimus/32/2805_2.png) [@dseptimus](https://platform.jetbrains.com/u/dseptimus)\
**Post date:** [April 20, 2026, 3:19am UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111/4 "2026-04-20T03:19:54Z")

</div>

The primary cutout mechanism in my tool uses [paper.js](http://paperjs.org/about/) to build a badge silhouette and then [paperjs-offset](https://github.com/glenzli/paperjs-offset) to create the cleared area around that silhouette. Then it uses [boolean subtraction](http://paperjs.org/examples/boolean-operations/) (also from paper.js) to carve the affected area out of the base icon. When it works, you get a highly optimized SVG, but there are some edge cases where it doesn’t, so there are both manual and automatic fallbacks to use SVG `clipPath` elements instead.

---

<div class="post-metadata">

**Author:** ![ldd](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/ldd/32/1238_2.png) [@ldd](https://platform.jetbrains.com/u/ldd)\
**Post date:** [April 20, 2026, 5:46am UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111/5 "2026-04-20T05:46:24Z")

</div>

This is really cool. Do you think it could be combined with AI to generate  
matching IntelliJ-style SVG icons from natural-language prompts, for example  
for MCP services?

---

<div class="post-metadata">

**Author:** ![dseptimus](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/dseptimus/32/2805_2.png) [@dseptimus](https://platform.jetbrains.com/u/dseptimus)\
**Post date:** [April 20, 2026, 6:32am UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111/6 "2026-04-20T06:32:54Z")

</div>

Yes, I almost exclusively use the tool via the CLI entrypoint by giving Claude Code a [skill](https://github.com/DavidSeptimus/letter-icon-composer/blob/main/.claude/skills/letter-icon-composer/SKILL.md) that describes how to use it effectively. No real need for MCP per-se.

I work with the agent to come up with a list of required variants (color, shape, letter, badges) for a particular initiative and then have it generate the full list. If something’s off, I just describe some desired adjustments and it regenerates the icon(s).

---

<div class="post-metadata">

**Author:** ![yuriy.artamonov](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/yuriy.artamonov/32/48_2.png) [@yuriy.artamonov](https://platform.jetbrains.com/u/yuriy.artamonov)\
**Post date:** [April 20, 2026, 7:46am UTC](https://platform.jetbrains.com/t/icons-icons-everywhere/4111/7 "2026-04-20T07:46:48Z")

</div>

I have implemented simple scale-up for modifier icon and clip in SVG, so we cut out its bigger silhouette
