10 releases (5 breaking)

0.6.0 Sep 20, 2024
0.5.1 Jun 16, 2024
0.5.0 May 14, 2024
0.3.1 Feb 23, 2024
0.1.0 Oct 19, 2023

#143 in Images

Download history 30/week @ 2024-08-17 29/week @ 2024-08-24 64/week @ 2024-08-31 73/week @ 2024-09-07 160/week @ 2024-09-14 179/week @ 2024-09-21 92/week @ 2024-09-28 119/week @ 2024-10-05 58/week @ 2024-10-12 44/week @ 2024-10-19 40/week @ 2024-10-26 82/week @ 2024-11-02 47/week @ 2024-11-09 22/week @ 2024-11-16 56/week @ 2024-11-23 173/week @ 2024-11-30

310 downloads per month

MIT license

4.5MB
12K SLoC

phosphor-leptos

crates.io docs.rs

Phosphor is a flexible icon family for interfaces, diagrams, presentations — whatever, really. You can explore the available icons at phosphoricons.com.

Installation

phosphor-leptos = "0.6.0"

or

cargo add phosphor-leptos

Usage

use leptos::*;
use phosphor_leptos::{Icon, IconWeight, HORSE, HEART, CUBE};

#[component]
fn MyComponent() -> impl IntoView {
    view! {
        <Icon icon=HORSE />
        <Icon icon=HEART color="#AE2983" weight=IconWeight::Fill size="32px" />
        <Icon icon=CUBE color="teal" weight=IconWeight::Duotone />
    }
}

Props

All of the props are MaybeSignals so they can be static or reactive.

  • color?: string – Icon stroke/fill color. Can be any CSS color string, including hex, rgb, rgba, hsl, hsla, named colors, or the special currentColor variable.
  • size?: number | string – Icon height & width. As with standard React elements, this can be a number, or a string with units in px, %, em, rem, pt, cm, mm, in.
  • weight?: IconWeight – Icon weight/style. Can also be used, for example, to "toggle" an icon's state: a rating component could use Stars with IconWeight::Regular to denote an empty star, and IconWeight::Fill to denote a filled star.
  • mirrored?: boolean – Flip the icon horizontally. Can be useful in RTL languages where normal icon orientation is not appropriate.

License

MIT © Phosphor Icons

Knowledge

Contributing

To generate all the icons, run

cargo xtask update

Dependencies

~20–33MB
~499K SLoC