Skip to content

richardszalay/sitecore-icon-build

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build status

MSBuild extensions for building Sitecore icon zip archives and including them in the published website.

Installation

PM> Install-Package RichardSzalay.Sitecore.Icons.MSBuild

Usage

The targets support two different ways of defining icons, and they can be mixed and matched. Both methods use the folder structure /sitecore/shell/Themes/Standard/[CustomSet]/ for defining custom icon sets.

The basic approach is to simply place 'master' images (128x128 recommended) in the custom set directory, and they will be resized into the standard icon sizes during the build process.

This can be supplemented by placing individual images in the sized (eg. 16x16/) subfolders. Any image in a sized folder will be used in preference to reszing the master image, and if all sized images are bespoke the master image can be omitted entirely.

Any number of custom icon set folders can be defined, and they can contain any combination of master vs sized icons.

Once pubished images can be referenced from Sitecore as CustomSet/32x32/icon1.png.

Publishing

The generated zip files are automatically included in the publish pipeline, and the original source files are omitted from it.

All generated files are written to obj/[Configuration]/sitecoreIcons/ so no additional version control ignore rules are required.

Performance

The targets make use of the correct MSBuild features to ensure that any work (be it resizing or creating zip files) is only done when the source files have changed. For most scenarios it should have little to no impact on build speed.

Development

The build process, including tests, can be run by cloning the repository and running:

Import-Module .\build\psake\psake.psd1
Invoke-psake

About

MSBuild support for building Sitecore icon archives

Resources

License

Stars

Watchers

Forks

Packages

No packages published