> For the complete documentation index, see [llms.txt](https://docs.matestack.io/matestack-ui-core/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.matestack.io/matestack-ui-core/1.5.0/components-api/core-components/icon.md).

# Icon

The HTML `<i>` tag, implemented in Ruby.

## Parameters

This component can take various optional configuration params and either yield content or display what gets passed to the `text` configuration param.

### Text (optional)

Expects a string which will be displayed as the content inside the `<i>` tag.

### HMTL attributes (optional)

This component accepts all the canonical [HTML global attributes](https://www.w3schools.com/tags/ref_standardattributes.asp) like `id` or `class`.

## Examples

### Example 1: Rendering a Font Awesome icon

```ruby
icon id: "foo", class: "fa fa-car"
```

returns

```markup
<i id="foo" class="fa fa-car"></i>
```

### Example 2: Rendering a Material Design icon

```ruby
icon id: "foo", class: "material-icons", text: "accessibility"
```

returns

```markup
<i id="foo" class="material-icons">accessibility</i>
```
