@samhenderson511/strapi-plugin-icon-picker
v1.1.1
Published
Select an icon from a list of SVG assets
Downloads
6
Readme
Icon picker custom field
This package provides a custom field for Strapi that lets us select an icon. It uses the IconPicker
component inside Strapi and a collection of generated SVG icons.
🏖️ Features
- List icons: to see them all.
- Search icons: to see just a few.
🔧 Installation
To install this plugin simply run this command in the Strapi project:
yarn add @jonssonworkwear/strapi-plugin-icon-picker
Content-type builder
When adding a new field to a content type, select CUSTOM (instead of DEAFULT), then select Icon picker.
Inside a content-type, we can use the following schema:
"icon": {
"type": "customField",
"customField": "plugin::icon-picker.IconPicker"
}
✨ Usage
- Icon selection: Click on one of the icons from the grid.
- Search icon: Click on the magnifying glass to search by the name of the icon.
- Remove selection: Click on the trash bin icon, this will leave the value of the field empty (unless required).
The plugin will store the name of the icon in a text field.
🪛 Development
Clone this repository in the Strapi directory.
git clone https://github.com/JonssonWorkwear/strapi-plugin-icon-picker.git src/plugins/strapi-plugin-icon-picker
Add the plugin to the yarn workspace, inside ./package.json
file, so we won't need to use yarn
inside plugin itself.
"workspaces": ["./src/plugins/strapi-plugin-icon-picker"]
Install dependencies.
yarn
Register the plugin so Strapi can use it. Inside ./config/plugins.js
file add an entry:
module.exports = ({ env }) => ({
"icon-picker": {
enabled: true,
resolve: "./src/plugins/strapi-plugin-icon-picker"
},
});
Rebuild the project and start the server.
yarn build
yarn develop
Or perhaps use the --watch-admin
flag to toggle hot reloading of the admin panel.
yarn develop --watch-admin
Generate icons
All the icons inside admin/src/components/IconPicker/icons
are generated from SVG files using svgr. The index file containing the COMPONENT_ICONS
list is also generated.
Release changes
All the changes are commited and pushed to this repository (or its forks), independently from the Strapi directory. The changes on the release
branch will be published in the @jonssonworkwear/strapi-plugin-icon-picker
package. If there is a new release published, plugins inside the Strapi project might need their version bumped.