neonexus/ionicons-bundle

Easy integration of Ionicons into Symfony2 projects (based on similar package by Coding Fogey).

Maintainers

👁 demortis

Package info

github.com/neonexus/ionicons-bundle

Type:symfony-bundle

pkg:composer/neonexus/ionicons-bundle

Statistics

Installs: 200

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.4.3 2014-08-07 16:19 UTC

Requires

Requires (Dev)

Suggests

  • braincrafted/bootstrap-bundle: BraincraftedBootstrapBundle integrates Bootstrap into Symfony2 by providing templates, Twig extensions, services and commands.
  • twbs/bootstrap: Sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.

Provides

None

Conflicts

None

Replaces

None

MIT be92b9238d844d86f19adb48e0c1a611731ee36a

This package is not auto-updated.

Last update: 2026-06-16 10:20:59 UTC


README

👁 Dependency Status
👁 SensioLabsInsight
👁 Latest Stable Version
👁 Latest Unstable Version
👁 Total Downloads
👁 License

About

This Bundle makes it easy to integrate Ionicons into your Symfony2 projects.

Prerequisites

  • Ionicons repo installed somewhere in your project. It is not contained in this bundle. You can use Composer, Bower or any other way to install it.

Installation

  1. Add neonexus/ionicons-bundle to your composer.json:

     {
     ...
     "require": {
     ...
     "neonexus/ionicons-bundle": "0.4.*",
     "driftyco/ionicons": "1.5.*"
     }
     ...
     }
    
  2. Add IoniconsBundle to your AppKernel.php:

     ...
     public function registerBundles()
     {
     $bundles = array(
     ...
     new NeoNexus\Ionicons\IoniconsBundle()
     );
     ...
     }
     ...
    
  3. Update your dependencies: composer update.

NOTICE Installing Ionicons via composer is optional but makes this bundle work out of the box. So I recommend this way.

Configuration

If you did not install Ionicons via composer you have to configure the path to your installation:

ionicons:
 assets_dir: %kernel.root_dir%/../vendor/driftyco/ionicons

Customization

If you want to customize Ionicons you have to put a customized variables file somewhere in your project and configure the path. You also have to set the output path.

ionicons:
 filter: less
 customize:
 variables_file: %kernel.root_dir%/Resources/ionicons/variables.less
 ionicons_output: %kernel.root_dir%/Resources/less/ionicons.less

If you want to use the lessphp or sass Assetic filter you have to set the filter variable accordingly.

There is a command to generate a customized output file to incorporate your customized variables file:

app/console neonexus:ionicons:generate

Usage

Installation of font files

The bundle provides a command to install the font files to the web/fonts directory:

app/console neonexus:ionicons:install

There is also a ScriptHandler for conveniently doing this automatically on each composer install or composer update:

...
"scripts": {
 "post-install-cmd": [
 ...
 "NeoNexus\\Ionicons\\Composer\\ScriptHandler::install"
 ],
 "post-update-cmd": [
 ...
 "NeoNexus\\Ionicons\\Composer\\ScriptHandler::install"
 ]
},
...

To include the Ionicons css just include @ionicons_css in your base template.

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8" />
 <title>{% block title %}Welcome!{% endblock %}</title>
 {% block stylesheets %}
 {% stylesheets
 '@ionicons_css'
 %}
 <link rel="stylesheet" href="{{ asset_url }}" media="screen"/>
 {% endstylesheets %}
 {% endblock %}

Simple icons (currently broken)

To insert a simple icon add {{ fa_icon( icon name|options ) }} into your template.

The parameter can be a string containing only the icon name without fa- prefix or JSON for more customization. The complete set of options is as follows:

{
 icon: name of the icon without 'fa-' prefix
 scale: [lg|2x|3x|4x|5x|stack-1x|stack-2x],
 fixed-width: [true|false],
 list-icon: [true|false],
 border: [true|false],
 pull: [left|right],
 spin: [true|false],
 rotate: [90|180|270],
 flip: [horizontal|vertical],
 inverse: [true|false]
}

TODO

  • Fix the Twig Extension
  • Fix the tests

License

Acknowledgment