Docs

1869 icons in 10 styles, drawn from Lucide 1.53.0. Each style is an icon font, and every icon has the same codepoint in every style.

Flutter

Add the package, then use any style class. Single-layer styles are plain IconData for Icon; two-layer styles (Duotone, Twotone, Bulk) draw with AshlarLayeredIcon.

$ flutter pub add ashlar_icons

The pub.dev release is pending. Until it lands, the command above will not find the package.

import 'package:ashlar_icons/ashlar_icons.dart';

Icon(AshlarIconsRoundedStroke.calendar, size: 24)
Icon(AshlarIconsSharpSolid.calendar)

AshlarLayeredIcon(
  AshlarIconsRoundedDuotone.calendar,
  color: Colors.indigo,
  secondaryColor: Colors.indigo.shade100, // optional; defaults to color at 40%
)

Every icon is a const IconData, so release builds keep only the glyphs you use.

Web

<link rel="stylesheet" href="https://icons.ashlar.ke/ashlar-icons.css">

<i class="ash ash-rounded-stroke ash-calendar"></i>
<i class="ash ash-sharp-solid ash-calendar"></i>
<i class="ash ash-rounded-duotone ash-calendar"></i>

Icons take the text colour and font size. For two-layer styles, set --ash-secondary to colour the faint layer and --ash-secondary-opacity to change its strength.

.brand-icon {
  color: #5b3df5;
  font-size: 32px;
  --ash-secondary: #c4b5fd;
  --ash-secondary-opacity: 1;
}

SVG

Every icon in every style is at https://icons.ashlar.ke/svg/<style>/<name>.svg, using currentColor. The icon browser copies and downloads them with your colours, and exports PNGs.

Styles

StyleWhat it isFlutter class
Rounded Stroke Lucide as drawn: 2px strokes, round caps and joins AshlarIconsRoundedStroke
Rounded Solid Outer shapes filled, inner details cut out AshlarIconsRoundedSolid
Rounded Duotone Stroke over a faint fill of the outer shapes AshlarIconsRoundedDuotone
Rounded Twotone Outer strokes, inner details faint AshlarIconsRoundedTwotone
Rounded Bulk Faint solid shapes, details at full strength AshlarIconsRoundedBulk
Standard StrokeCorner radii halved, mitred joinsAshlarIconsStandardStroke
Standard SolidStandard corners, filledAshlarIconsStandardSolid
Standard Duotone Standard corners, stroke over a faint fill AshlarIconsStandardDuotone
Sharp StrokeSquare corners and capsAshlarIconsSharpStroke
Sharp SolidSquare corners, filledAshlarIconsSharpSolid

Icons with no closed outer shape (arrows, chevrons, most lines) look the same in Stroke and Solid, and have no faint layer in Duotone and Bulk.

Codepoints never change

Codepoints live in a locked registry. An icon keeps its codepoint forever, new icons are appended, and removed names are never reused, so upgrading cannot swap one icon for another. Icons Lucide renamed keep their old names as deprecated Dart constants and CSS classes.

Licence

ISC, the same as Lucide, whose designs these are. Icons Lucide took from Feather keep their MIT notice. Free for any use, commercial included, with no account and no limits.