json
title: Individual Icon Sets
types:
IconifyJSON: "/docs/types/iconify-json.md"
IconifyInfo: "/docs/types/iconify-json-metadata.md"
IconifyChars: "/docs/types/iconify-json-metadata.md#chars"
IconifyMetaData: "/docs/types/iconify-json-metadata.md#iconify-categories"
functions:
exportJSONPackage: "/docs/libraries/tools/export/json-package.md"
getIconData: "/docs/libraries/utils/get-icon-data.md"
getIcons: "/docs/libraries/utils/get-icons.md"
Individual icon sets
For developer's convenience, full icon sets package is also available as smaller packages, one package per icon set.
Packages
Packages are published as [npm]@iconify-json/{prefix}, where [str]{prefix} is icon set prefix.
These packages are available only on NPM. They are automatically generated from big icon sets package whenever it is updated.
Contents
Unlike full package, where all data for icon set is stored in one file, individual icon sets split data in several files, so you can load only data you need:
[file]icons.jsoncontains icon set in[type]IconifyJSONformat, without any metadata.[file]info.jsoncontains icon set information in[type]IconifyInfoformat.[file]chars.jsoncontains characters map, if exists in[type]IconifyCharsformat. File might not exist in some icon sets.[file]metadata.jsoncontains metadata in[type]IconifyMetaDataformat: categories, themes. File might not exist in some icon sets.
You can import icon set using named import from package, like this:
import { icons as mdiIcons } from "@iconify-json/mdi";
import { icons as mdiLightIcons } from "@iconify-json/mdi-light";
Code samples above use JSON modules. It works fine when using bundlers or when using CommonJS. When using ES modules, older versions of Node.js require running script with [str]--experimental-json-modules flag.
If you are using older Node.js and cannot import JSON files, you can use [func]require():
const mdiIcons = require("@iconify-json/mdi/icons.json");
const mdiLightIcons = require("@iconify-json/mdi-light/icons.json");
Creating packages
If you want to create a package for your icon set, see [func]exportJSONPackage() of Iconify Tools.
Difference from big icon sets package
In big icon sets package, all JSON files contain an entire icon set: icon data, information, metadata (categories, themes), characters map.
In small packages that data is split into several files, as described above. If you only want icon data, it is better to read [file]icons.json from multiple small packages because they are smaller.
Icon sets list
If you need to get list of available open source icon sets, see icon sets list package.
Reading data {#tools}
For reading icon sets, you can use:
- Iconify Utils for JavaScript.
- Iconify JSON Tools for PHP (deprecated).
To use icon set packages with Iconify Utils, follow these steps:
- Read icons data. If you are using file system functions that return a string, convert it to
[type]IconifyJSONobject using[func]JSON.parse(). - Extract data. To extract multiple icons, use
[func]getIcons(), to extract one icon use[func]getIconData(). Click function links for code samples.
谢谢你的反馈!