File Icons

File Icons Reference

Introduction

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:

How it works

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 icon_associations.xml

Reference

File Icons

access.svg Access
actionscript.svg Actionscript
ada.svg Ada
ae.svg Ae
ahk.svg Ahk
ai.svg Ai
akka.svg Akka
android.svg Android
angular.svg Angular
angularcomponent.svg Angularcomponent
angulardirective.svg Angulardirective
angularguard.svg Angularguard
angularpipe.svg Angularpipe
angularresolver.svg Angularresolver
angularrouting.svg Angularrouting
angularservice.svg Angularservice
ansible.svg Ansible
apib.svg Apib
applescript.svg Applescript
appstore.svg Appstore
appstore_dark.svg Appstore_dark
appveyor.svg Appveyor
archive.svg Archive
arduino.svg Arduino
asm.svg Asm
asp.svg Asp
atom.svg Atom
atom_dark.svg Atom_dark
audio.svg Audio
aurelia.svg Aurelia
authors.svg Authors
aws.svg Aws
babel.svg Babel
ballerina.svg Ballerina
bazel.svg Bazel
bean.svg Bean
behat.svg Behat
binary.svg Binary
blade.svg Blade
blank.svg Blank
bookmark.svg Bookmark
bower.svg Bower
browserslist.svg Browserslist
bundle.svg Bundle
c.svg C
cabal.svg Cabal
cakephp.svg Cakephp
cf.svg Cf
cfc.svg Cfc
chef.svg Chef
circleci.svg Circleci
class.svg Class
clojure.svg Clojure
cmake.svg Cmake
cname.svg Cname
coffeescript.svg Coffeescript
compass.svg Compass
composer.svg Composer
config.svg Config
config_dark.svg Config_dark
cordova.svg Cordova
cpp.svg Cpp
crystal.svg Crystal
csharp.svg Csharp
css.svg Css
css_dark.svg Css_dark
cssmap.svg Cssmap
csv.svg Csv
cucumber.svg Cucumber
dart.svg Dart
db.svg Db
default.svg Default
diff.svg Diff
diff_dark.svg Diff_dark
django.svg Django
dlang.svg Dlang
docker.svg Docker
dotjs.svg Dotjs
dotnet.svg Dotnet
doxygen.svg Doxygen
drupal.svg Drupal
dts.svg Dts
dylib.svg Dylib
eclipse.svg Eclipse
editorconfig.svg Editorconfig
ejs.svg Ejs
elm.svg Elm
emacs.svg Emacs
ember.svg Ember
erb.svg Erb
erlang.svg Erlang
eslint.svg Eslint
ex.svg Ex
excel.svg Excel
favicon.svg Favicon
finder.svg Finder
firebase.svg Firebase
fish.svg Fish
flash.svg Flash
flow.svg Flow
flow_dark.svg Flow_dark
font.svg Font
freemarker.svg Freemarker
fsharp.svg Fsharp
gatsby.svg Gatsby
gemfile.svg Gemfile
ghostscript.svg Ghostscript
git.svg Git
github.svg Github
github_dark.svg Github_dark
go.svg Go
godot.svg Godot
gradle.svg Gradle
graphql.svg Graphql
graphviz.svg Graphviz
groovy.svg Groovy
gruntfile.svg Gruntfile
gulpfile.svg Gulpfile
hack.svg Hack
haml.svg Haml
haskell.svg Haskell
haxe.svg Haxe
hcl.svg Hcl
hh.svg Hh
htaccess.svg Htaccess
html.svg Html
i18n.svg I18n
idea.svg Idea
image.svg Image
indesign.svg Indesign
ionic.svg Ionic
jade.svg Jade
java.svg Java
jekyll.svg Jekyll
jenkins.svg Jenkins
jest.svg Jest
jinja.svg Jinja
jira.svg Jira
joomla.svg Joomla
jquery.svg Jquery
js.svg Js
jsmap.svg Jsmap
jsmin.svg Jsmin
json.svg Json
jsp.svg Jsp
jsx.svg Jsx
julia.svg Julia
jupyter.svg Jupyter
karma.svg Karma
karma_dark.svg Karma_dark
knockout.svg Knockout
kotlin.svg Kotlin
less.svg Less
license.svg License
liquid.svg Liquid
lisp.svg Lisp
lock.svg Lock
log.svg Log
lsl.svg Lsl
lua.svg Lua
m.svg M
magento.svg Magento
makefile.svg Makefile
mako.svg Mako
manpage.svg Manpage
markdown.svg Markdown
markup.svg Markup
mathematica.svg Mathematica
matlab.svg Matlab
maven.svg Maven
maya.svg Maya
mercurial.svg Mercurial
meteor.svg Meteor
mjml.svg Mjml
mocha.svg Mocha
mongodb.svg Mongodb
mustache.svg Mustache
nginx.svg Nginx
nib.svg Nib
nim.svg Nim
nodejs.svg Nodejs
nodemon.svg Nodemon
note.svg Note
npm.svg Npm
nsis.svg Nsis
nuclide.svg Nuclide
nuget.svg Nuget
objc.svg Objc
ocaml.svg Ocaml
onenote.svg Onenote
openoffice.svg Openoffice
p4.svg P4
pascal.svg Pascal
patch.svg Patch
pdf.svg Pdf
perl.svg Perl
phalcon.svg Phalcon
phalcon_dark.svg Phalcon_dark
php.svg Php
phpunit.svg Phpunit
phtml.svg Phtml
play.svg Play
plist.svg Plist
polymer.svg Polymer
postcss.svg Postcss
powerpoint.svg Powerpoint
powershell.svg Powershell
preferences.svg Preferences
premiere.svg Premiere
prettier.svg Prettier
procfile.svg Procfile
protractor.svg Protractor
psd.svg Psd
pug.svg Pug
puppet.svg Puppet
purescript.svg Purescript
python.svg Python
r.svg R
rails.svg Rails
rake.png Rake
rake@2x.png Rake@2x
raml.svg Raml
razor.svg Razor
rdoc.svg Rdoc
react.svg React
readme.svg Readme
readme_dark.svg Readme_dark
reason.svg Reason
redis.svg Redis
redux-action.svg Redux-action
redux-reducer.svg Redux-reducer
redux-store.svg Redux-store
redux.svg Redux
redux_dark.svg Redux_dark
riot.svg Riot
robot.svg Robot
rollup.svg Rollup
rspec.svg Rspec
rst.svg Rst
rubocop.svg Rubocop
ruby.svg Ruby
rust.svg Rust
sass.svg Sass
sbt.svg Sbt
scala.svg Scala
scss.svg Scss
settings.svg Settings
shell.svg Shell
sketch.svg Sketch
slim.svg Slim
smarty.svg Smarty
solidity.svg Solidity
sonar.svg Sonar
source.svg Source
spring.svg Spring
sql.svg Sql
sqlite.svg Sqlite
stata.svg Stata
stencil.svg Stencil
storybook.svg Storybook
stylelint.svg Stylelint
stylus.svg Stylus
sublime.svg Sublime
svg.svg Svg
svg_dark.svg Svg_dark
svn.svg Svn
swagger.svg Swagger
swift.svg Swift
swig.svg Swig
symfony.svg Symfony
symfony_dark.svg Symfony_dark
tcl.svg Tcl
tern.svg Tern
test.svg Test
testjava.svg Testjava
testjs.svg Testjs
testjs_dark.svg Testjs_dark
testpy.svg Testpy
testruby.svg Testruby
testts.svg Testts
tex.svg Tex
text.svg Text
textile.svg Textile
textmate.svg Textmate
todo.svg Todo
tomcat.svg Tomcat
travis.svg Travis
twig.svg Twig
typeScript.svg Typescript
typings.svg Typings
unreal.svg Unreal
v8.svg V8
vagrant.svg Vagrant
vhdl.svg Vhdl
video.svg Video
vim.svg Vim
visio.svg Visio
vs.svg Vs
vue.svg Vue
wallaby.svg Wallaby
webpack.svg Webpack
windows.svg Windows
word.svg Word
wordpress.svg Wordpress
wordpress_dark.svg Wordpress_dark
xamarin.svg Xamarin
xml.svg Xml
yaml.svg Yaml
yarn.svg Yarn
yeoman.svg Yeoman
yt.svg Yt

Folder Icons

audio.svg Audio
aws.svg Aws
benchmark.svg Benchmark
bower.svg Bower
circleci.svg Circleci
components.svg Components
config.svg Config
controllers.svg Controllers
coverage.svg Coverage
db.svg Db
debug.svg Debug
dist.svg Dist
docker.svg Docker
docs.svg Docs
exclude.svg Exclude
expo.svg Expo
fonts.svg Fonts
git.svg Git
github.svg Github
global.svg Global
gradle.svg Gradle
i18n.svg I18n
images.svg Images
include.svg Include
jinja.svg Jinja
js.svg Js
kubernetes.svg Kubernetes
less.svg Less
lib.svg Lib
logs.svg Logs
markdown.svg Markdown
maven.svg Maven
messages.svg Messages
models.svg Models
node.svg Node
open.svg Open
other.svg Other
php.svg Php
plugin.svg Plugin
python.svg Python
react.svg React
redux-actions.svg Redux-actions
redux-reducers.svg Redux-reducers
redux-stores.svg Redux-stores
resource.svg Resource
routes.svg Routes
ruby.svg Ruby
sass.svg Sass
scripts.svg Scripts
src.svg Src
styles.svg Styles
sublime.svg Sublime
sync.svg Sync
tasks.svg Tasks
temp.svg Temp
tests.svg Tests
themes.svg Themes
ts.svg Ts
video.svg Video
views.svg Views
vscode.svg Vscode
vue.svg Vue
web.svg Web
webpack.svg Webpack
wordpress.svg 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
  • You must submit two icons: one of size 16x16 and one of size 32x32 with the @2x.png extension.
  • The icon must be in PNG format.
  • OR you can send a SVG but 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.)