Here are rules that should be followed to keep quality and consistency when making icons for Lucide.
Before an icon is added to the library, we like to have readable and optimized svg code.
For each icon these attributes are applied, corresponding to the above rules.
<svgxmlns="http://www.w3.org/2000/svg"width="24"height="24"viewBox="0 0 24 24"fill="none"stroke="currentColor"stroke-width="2"stroke-linecap="round"stroke-linejoin="round"><!-- SVGElements --></svg>
Code of paths can get really big. To reduce file size we like to minify the code. We recommend to use the SVGOMG to minify paths.
Each icon added must also come with a matching JSON file listing tags and categories for the icon. Please use the following template:
{"$schema": "../icon.schema.json","tags": ["foo","bar"],"categories": ["devices"]}