Healthicons Gem Version MIT License

Healthicons

Is a Rails based helper to add Healthicons SVG icons directly to your applications views.

To view a searchable list of all the healthicons visit their homepage at https://healthicons.org/

NOTE: This gem is in no way associated with the official Healthicons package, it's just a helper to easily inject the icons SVG icons into your applications views.

Installation

Add this line to your application's Gemfile:

gem 'healthicons'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install healthicons

Usage

After installing the gem you will than have availability to call the healthicons('icon') helper within your views. Which will output the the icons raw SVG/XML to your page. Something to note in order to output the icon to the page need to known the icons group and it's icon name. This is because some icons such as fever have multiple entries within different groups. (Such as devices/fever and people/fever.)

Thus in order to output the icons to you application your icon reference needs to me the icon group + icon name, seperated by /.

<%= healthicons('devices/fever') %> or <%= healthicon('body/dna') %>

Icon Varients

As of the most recent release Healthicons provides two different icon varients (solid, outline).

The default variant in this gem is to use the outline version. If you want to use the solid version when pulling an icon you use the variant keyword when fetching the icon.

<%= healthicon('body/dna', variant: :solid) %> - It accepts the variant as a string or a symbol.

Icon Sizes

In order for the icons to display properly the height and width of the icons must be proportionate. Thus in order to to adjust their size you can pass a numeric value for the size keyword. This size will be applied to both the height and width of the icon. If you attempt to pass a height/width value they will be stripped.

<%= healthicon('body/dna', size: 14) %>

Additional options

It is very easy to add additional attributes to the icons <svg></svg> element. Please note there are a handful of attributes filtered in order to prevent from breaking the icon. Any additional attributes you want to modify or add to the icons <svg> element you just use a a keyword attribute with a value such as the following.

<%= healthicon('body/dna', alt: 'A double helic carrying genetic instructions.') %>

Adding color

I'm sure you won't want to stick with with using gray/black as the icons default color. You'll want to add stroke='currentColor' to the icons SVG, this allows you to set color in CSS to apply a color to the icons primary stroke.

The easiest two methods to add color to the icon can be done with the following methods:

First method:

Add inline CSS to the icon

<%= healthicon('body/dna', stroke: 'currentColor', style: 'color: red') %>

Second Method:

Create a class in your stylesheets and add the class to the icon.

.red { color: red; }

<%= healthicon('body/dna', stroke: 'currentColor', class: 'red' ) %>

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rspec spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/tarellel/healthicons.

License

The gem is available as open source under the terms of the MIT License.

The icons associated from the original package in this gem are licenses under the CC0 License