@samhenderson511/strapi-plugin-icon-picker

1.1.1 • Public • Published

Icon picker custom field

Icon picker custom field preview. Features a grid of icons.

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.

Icon picker custom field preview inside the content type builder

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.

Readme

Keywords

none

Package Sidebar

Install

npm i @samhenderson511/strapi-plugin-icon-picker

Weekly Downloads

1

Version

1.1.1

License

MIT

Unpacked Size

2.76 MB

Total Files

14

Last publish

Collaborators

  • samhenderson511