fceruti / surface-boxicon

Surface component library that wraps the amazing boxicons library.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Boxicon

Boxicon is surface component library that wraps the amazing boxicons library.

Hex pm build

Usage

defmodule MyComponent do
  use Surface.Component

  @impl true
  def render(assigns) do
    ~F"""
      <Boxicon
        type="regular"
        name="calendar"  
        size="64" 
        class="icon green"
      />
    """
  end
end

Configuration

Default values

Default values let you write your boxicons using less code.

config :surface_boxicon,
  default_type: "regular",
  default_size: 24,
  default_class: "icon"

Icons

By default Boxicon will compile all the 1500+ icons, which can take a while and will make you runtime unnecessarily bloated. To fix this, you can specify the icons you want or an entire category.

This are some possible configurations:

Two regular icons, all the logos and none of the solid ones.

config :surface_boxicon,
  icons: [
    regular: ["calendar", "chvron-down"],
    logos: :all,
    solid: nil
  ]

Just the icons you need (recommended)

config :surface_boxicon,
  icons: [
    regular: ["calendar", "chvron-down"],
    solid: ["hand", "file-md"],
    logos: ["docker"]
  ]

Compile all the icons (default config)

config :surface_boxicon,
  icons: :all

For the complete list of available icons visit the boxicons wesite.

Installation

Add boxicons to your dependencies in your mix.exs file

def deps do
  [
    {:surface_boxicon, "~> 0.4.0"}
  ]
end

Then run

mix deps.get

and that's pretty much it.

About

Surface component library that wraps the amazing boxicons library.


Languages

Language:Elixir 100.0%