by lgarron

lgarron / folderify

:file_folder: Generate pretty, beveled macOS folder icons.

232 Stars 16 Forks Last release: Not found MIT License 113 Commits 15 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:


mask.png + folder = folderified!

Install from PyPI using

brew install imagemagick # Make sure ImageMagick installed.
pip install folderify

Simple Usage

curl -o octocat.png
mkdir new_dir
folderify octocat.png new_dir --reveal

Cache your folderified icons.

# Set the icon for the folder, and cache it.
curl -o octocat.png
mkdir new_dir
folderify --cache octocat.png new_dir

Remove the source image and the folder.

rm octocat.png && rm -rf new_dir

Recreate the directory and add the icon from the cache.

mkdir new_dir folderify --cache-restore new_dir

View cache contents.

folderify --cache-list

You are now safe(r) from programs that steamroll over metadata!

Use without

git clone git://
cd folderify
python -m folderify examples/src/folder_outline.png . --reveal

The repository folder should now have a custom icon.

for file in examples/src/*.png; do python -m folderify $file; done
open examples/src/

You should see a bunch of new

folders and
files that were automatically generated from the


usage: folderify [-h] [--reveal] [--osx VERSION] [--cache] [--cache-dir DIR]
                 [--cache-list] [--cache-restore PATH] [--cache-restore-all]
                 [--cache-remove PATH] [--verbose]
                 [mask] [target]

Generate a native macOS folder icon from a mask file.

positional arguments: mask Mask image file. For best results: - Use a .png mask. - Use a solid black design over a transparent background. - Make sure the corner pixels of the mask image are transparent. They are used for empty margins. - Make sure the icon is at least around 1024x1024, in order to look good at maximum Retina resolution. target Target file or folder. If a target is specified, the resulting icon will be applied to the target file/folder. Else, a .iconset folder and .icns file will be created in the same folder as mask (you can use "Get Info" in Finder to copy the icon from the .icns file).

optional arguments: -h, --help show this help message and exit --reveal, -r Reveal the target (or resulting .icns file) in Finder. --osx VERSION, -x VERSION Version of the macOS folder icon, e.g. "10.9" or "10.10". Defaults to the version this computer is running (10.10). --cache, -c Cache the mask icon in the cache dir. --cache-dir DIR Use the specified cache directory (default: ~/.folderify/cache). --cache-list List all paths with cached masks. --cache-restore PATH Restore folderified icon to the file/folder at PATH, using the mask image in the cache for that path. --cache-restore-all Restore all paths that have been cached. --cache-remove PATH Remove the cached mask for the file/folder at PATH. --verbose, -v Detailed output.


  • ImageMagick - for image processing (you should be able to run convert on the commandline).
  • Python 2 - to help assign the icon file to itself.
  • Apple Developer Tools (for


is generated from the macOS default folder icon using:
iconutil --convert iconset --output GenericFolderIcon.iconset "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/GenericFolderIcon.icns"

Icons are set using

, a GPL-licensed project by Sveinbjorn Thordarson (based on


We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.