Aside from themes and color schemes, the plugin provides also a complete reskin to the projects’ file icons, making them
prettier and easier to distinguish.
It’s heavily inspired by the
A File Icon plugin for Sublime, which itself is inspired by
Atom File Icons Atom plugin.
Note: There is also a standalone plugin for the icons only, called
Atom File Icons IDEA, which is straight out taken
from this plugin, so if you’d like to only have the icons without the themes, check this one.
Acknowledgements
All file icons have been built using the tools provided by
A File Icon. Great thanks to
@ihodev!
The icons themselves were taken from one of these sources:
Icons are matched based on a specific pattern in the filename:
According to the file extension (ex: .png, .js, .yml …)
According to the framework/library (ex: package.json, Gemfile, AndroidManifest.xml…)
According to certain keywords in the name (Redis, Cordova, Git…)
Finally, if the icon does not fall in any of the categories, it will either:
Get a generic category (Audio, Video, Archive, JSON)
Fallback to the original icon provided by JetBrains
To see the full associations list, see
Associations
Reference
File Icons
3d
Access
Actionscript
Ada
Adonis
Ae
Ahk
Ai
Akka
Android
Angular
Angularcomponent
Angulardirective
Angularguard
Angularpipe
Angularresolver
Angularrouting
Angularservice
Ansible
Antlr
Apib
Applescript
Appstore
Appstore_dark
Appveyor
Archive
Arduino
Asciidoc
Asm
Asp
Atom
Atom_dark
Audio
Aurelia
Authors
Autoit
Aws
Azure
Babel
Ballerina
Bazel
Bean
Behat
Binary
Bitbucket
Bithound
Blade
Blank
Blink
Bookmark
Bower
Brainfuck
Bro
Browserslist
Bucklescript
Buildkite
Bundle
C
Cabal
Cakephp
Cargo
Certificate
Cf
Cfc
Chef
Circleci
Class
Clojure
Cmake
Cname
Cobol
Codecov
Codeowners
Coffeescript
Commitlint
Compass
Composer
Config
Config_dark
Cordova
Cpp
Credits
Crystal
Csharp
Css
Css_dark
Cssmap
Csv
Cucumber
Cypress
Cython
Dart
Db
Default
Delphi
Diff
Diff_dark
Django
Dlang
Docker
Dotjs
Dotnet
Doxygen
Drupal
Dts
Dylib
Eclipse
Editorconfig
Eiffel
Ejs
Elm
Emacs
Ember
Erb
Erlang
Eslint
Ex
Excel
Favicon
Finder
Firebase
Fish
Flash
Flow
Flow_dark
Font
Fortran
Freemarker
Fsharp
Gatsby
Gemfile
Ghostscript
Git
Github
Github_dark
Gitlab
Go
Godot
Gradle
Graphcool
Graphql
Graphviz
Gridsome
Groovy
Groovyfile
Gruntfile
Gulpfile
Hack
Haml
Haskell
Haxe
Hcl
Helm
Heroku
Hh
History
Houdini
Htaccess
Html
Http
Husky
I18n
Idea
Idris
Image
Indesign
Io
Ionic
Istanbul
J
Jade
Java
Jekyll
Jenkins
Jest
Jinja
Jira
Joomla
Jquery
Js
Jsmap
Jsmin
Json
Jsp
Jsx
Julia
Jupyter
Karma
Karma_dark
Key
Kivy
Kl
Knockout
Kotlin
Lerna
Less
Lib
License
Lint-staged
Liquid
Lisp
Livescript
Lock
Log
Lsl
Lua
M
Magento
Makefile
Mako
Manifest
Manpage
Markdown
Marko
Markup
Mathematica
Matlab
Maven
Maya
Mdx
Mercurial
Merlin
Meteor
Mint
Mjml
Mocha
Mongodb
Moonscript
Mustache
Mxml
Nest
Netlify
Netlify_headers
Netlify_redirects
Nginx
Nib
Nim
Nodejs
Nodemon
Note
Now
Npm
Nsis
Nuclide
Nuget
Nunjucks
Nuxt
Objc
Ocaml
Onenote
Openoffice
P4
Pascal
Patch
Pdf
Perl
Phalcon
Phalcon_dark
Php
Phpunit
Phtml
Pipfile
Play
Plist
Plugin
Pnpm
Polymer
Postcss
Posthtml
Postscript
Powerpoint
Powershell
Preferences
Premiere
Prettier
Prisma
Processing
Procfile
Prolog
Protractor
Psd
Pug
Puppet
Purescript
Python
R
Racket
Rails
Rake
Raml
Razor
Rdoc
React
Readme
Readme_dark
Reason
Red
Redis
Redux-action
Redux-reducer
Redux-store
Redux
Redux_dark
Restql
Riot
Robot
Rollup
Rspec
Rst
Rubocop
Ruby
Rust
San
Sapper
Sass
Sbt
Scala
Scd
Scheme
Scss
Semantic-release
Sequelize
Settings
Shell
Silverstripe
Sketch
Slim
Smarty
Snapshot
Solidity
Sonar
Source
Spring
Sql
Sqlite
Stata
Stencil
Storybook
Stylelint
Stylus
Sublime
Svelte
Svelte_config
Svg
Svg_dark
Svn
Swagger
Swc
Swift
Swig
Symfony
Symfony_dark
Tailwindcss
Tcl
Tern
Terraform
Test
Testgo
Testjava
Testjs
Testjs_dark
Testpy
Testreact
Testruby
Testrust
Testts
Tex
Text
Textile
Textmate
Todo
Tomcat
Toml
Travis
Tslint
Turing
Twig
Typescript
Typedoc
Typings
Uml
Unity
Unreal
V
V8
Vagrant
Vala
Velocity
Version
Vhdl
Video
Vim
Visio
Vm
Vs
Vue
Vuex
Wallaby
Webassembly
Webhint
Webpack
Wepy
Windows
Word
Wordpress
Wordpress_dark
Xamarin
Xml
Yaml
Yang
Yarn
Yeoman
Yt
Yvmrc
Folder Icons
Android
Animations
Api
Archive
Audio
Aws
Benchmark
Bower
Ci
Circleci
Class
Components
Config
Constants
Container
Content
Controllers
Core
Coverage
Css
Custom
Db
Debug
Delta
Dist
Docker
Docs
Download
Dump
E2e
Env
Error
Events
Examples
Exclude
Expo
Fixtures
Flow
Fonts
Functions
Generated
Git
Github
Global
Gradle
Graphql
Grunt
Guard
Gulp
Helper
Hook
I18n
Icons
Idea
Images
Include
Ios
Jinja
Job
Js
Json
Keys
Kubernetes
Layouts
Less
Lib
Logs
Mailers
Maps
Markdown
Maven
Messages
Meta
Middleware
Mocks
Modals
Models
Netlify
Node
Notification
Nuxt
Open
Other
Packages
Php
Pipe
Plugin
Posts
Prisma
Private
Providers
Python
React
Redux-actions
Redux-reducers
Redux-stores
Redux
Relay
Resource
Reviews
Routes
Ruby
Rules
Sass
Screens
Scripts
Security
Server
Serverless
Shared
Src
Stack
Storybook
Styles
Stylus
Sublime
Sync
Syntax
Tasks
Temp
Tests
Themes
Tools
Ts
Upload
Utils
Video
Views
Vm
Vscode
Vue
Vuex
Web
Webpack
Wordpress
Customization
If you want to add an icon, or add/remove/modify an association pattern to/from the list, you can submit a PR with the
requested icon/change. Your request must follow those guidelines:
The icon must be an acknowledged icon, e.g. from one of the
aforementioned resources. If you cannot find your icon in these resources but want to create one
anyway, you must:
Have your icon as close as the original language/framework logo
Only use one color
The color must be one of those mentioned in Color Schemes
The icon must be in SVG format and its width and height must be 16x16.
The icon must not weigh too much (it rarely exceeds 5KB)
Add the icon in the src/resources/icons/files folder.
If you add an association, please bear in mind that:
The items are processed from top to bottom, so specific icons (like package.json) must come before generic icons
(such as *.json).
Check that your association is not used or shadowed by another one.
Your association must make sense (e.g. not Verizon, *.000 or a.b)
Also please note that it’s preferable that your icon is actually of use, e.g. do not submit requests for a private
framework that you use only in your company or of a personal choice (like “I prefer my html files to have the React
icon” or something of the sort.)