The src/svg directory is the single source of truth for svgs. They should not already be optimized and can be the original svg export straight out of an svg editor. A build step before releasing will optimize the source svgs (remove comments, reduce the size, etc) and ensure they'll work within ion-icon.
After an svg has been updated, added or deleted from the src/svg directory, run:
npm run buildThe build command will optimize all of the icons and generate the files to be distributed. After the build command, all of the optimized svgs are saved in dist/ionicons/svg. Additionally the dist directory contains the distribution files for the ion-icon web component.
After a build, a new www/cheatsheet.html file will be created. This version uses svg symbols rather than ion-icon.
To see the ion-icon component in action, run:
npm startReleases are automated via GitHub Actions. To trigger a release:
- Go to the Release Orchestrator workflow
- Click "Run workflow"
- Select the release type:
- dev — Creates a pre-release with a timestamp-based version (e.g.,
8.0.14-dev.11784821417.1c794397) - production — Creates a semver release; select
patch,minor, ormajor
- dev — Creates a pre-release with a timestamp-based version (e.g.,
- The workflow will build, publish to NPM, and create a GitHub release (for production releases)