package

github.com/kojix2/icon-fluent

main / published Oct 22, 2026 / repository

icon-fluent

Fluent UI System Icons as pre-rendered CrImage constants for Crystal. Images use the size in each SVG filename.

dependencies:
  icon-fluent:
    github: kojix2/icon-fluent
require "icon-fluent"

icon = Icon::Fluent::Add20Filled

Includes every upstream SVG: regular, filled, light, and color, including language and direction variants. Names follow the SVG filenames, size, and style. Use require "icon-fluent/20_filled" to load one size and style. PNG data lives in src/data/*.tsv and is loaded by a Crystal macro. Constants are shared, mutable images; copy before editing. Source colors and transparency are retained.

Regenerate

Requires Python 3, librsvg, Cairo, and a ZIP of the upstream repository.

python3 scripts/generate.py /path/to/fluentui-system-icons.zip
python3 scripts/generate.py /path/to/fluentui-system-icons.zip --check

If upstream adds a new size or style, add its src/<group>.cr wrapper and require it from src/icon-fluent.cr.

MIT: shard, upstream icons and notice.

API