PHP file icons
I don’t use vira theme on daily basis, because the in-built PHPStorm icons provide a much better ux when navigating the src directory.
Just take a look:
vira

in-built

In-built icons can be distinguished by:
Class
Readonly class
Final class
Abstract class
Interface
Trait
Enum
Exception class
Plain .php file
Attribute
(possibly more)
From what I can see, vira supports ‘dynamic icons’ for java, it’s surely possible to extend the support for PHP projects. I’m aware I can disable custom vira icons, but the solution is like disabling 33% of a product I bought.
Log in to comment and vote
Comments7
vira
Jul 12
Hello, could you try checking on 2026.6.1 to see if the issue persists?
HaKIM
Jul 20
Sorry for late response.
Yes, unfortunately the issue persists. It’s just now the icons are of different colors. It’s some kind of improvement, but far away from ideal.
I’ve updated my PHPStorm from 2026.1.4 to 2026.2, unfortunately it didn’t help.
vira
Jul 20
What icons would you suggest to differentiate the various PHP types? We don’t believe the IntelliJ ones are truly explanatory compared to the noise they introduce.
HaKIM
Jul 21
That makes it hard for me to answer, because I’m of an opposite belief.
I checked “Atom Material Icons” for some inspiration, but I found their icons too chaotic, prioritizing ‘artistic view/real life representations’ more than practicality (like locks for final classes).
I like the vanilla ones, maybe because I simply got use to them, but I think they just make sense - most of the time - and are universal in the jetbrains family of products, so once you get used to them in phpstorm you can navigate intelij easily.
To make those icons more Vira themed, maybe we could simply edit existing ones into ‘cleaner’ versions? Instead of colorful icons with a background we could make them of a solid color (with secondary color for things like final or readonly indicators) and outlined?
Another option - if technically achievable - could be to add a checkbox that would disable vira icons only for ‘working files’. The only problematic part is that it should work based on used IDE. So for phpstorm ‘working files’ are *.php files, for intelij .java and .kt (kotlin), for PyCharm .py, .pyc (and so on). Such map could probably be easily generated with help of AI. It could serve as a temporary solution until you guys would get a vision on how vira icons could look like.
vira
Jul 23
What shape or icon do you think best represents the various types of PHP files in the native icons? Which symbol would you associate with each file type you listed above?
We see the native icons use like C, I, E symbols combined with a sort ho hammer symbol. What that represents to you?
HaKIM
Aug 3
C - Class
E - Enum
I - Interface
The final symbol isn’t clear to me, and is the only one that I’d think of changing - it kinda looks like a brake caliper.
As for a ‘ho hammer symbol’ - It doesn’t ring a bell, especially in combination with an interface or an enum. Hammers are usually used to indicate ‘building’ - like a ‘gradle build’ job in intelij.
Readonly classes have the eye symbol - fine with me.
Then we have abstract class symbol, which makes the C icon border “dashed” - I think it’s clever, because those empty spaces look like ports from hexagonal architecture, so you can plug-in by extending.
Having PHP-specific represents for those various types of icons sounds cool, I could even say “premium-like”, but I don’t think it’s a good idea, because when switching between IDEAs (phpstorm to intelij) I’d need to constantly re-map those file icons and symbols to navigate file tree efficiently. Those icons must making the navigation of the project easier, that’s it. If a symbol isn’t clear in terms of ‘why has it been used to indicate X?’, then it’s a problem only if it’s conflicting with some other indication, like having a pergamin with a quill to indicate a read-only class; it’s simply confusing.
vira
Aug 17
In the 2026.7 you’ll be able to disable custom icons for PHP files in the plugin settings.