PHPackages                             ehann/frontend-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. ehann/frontend-bundle

ActiveLibrary

ehann/frontend-bundle
=====================

Provides frontend components and layouts.

1.0.2(12y ago)120MITPHPPHP &gt;=5.3.3

Since Jun 14Pushed 12y ago1 watchersCompare

[ Source](https://github.com/ethanhann/EhannFrontendBundle)[ Packagist](https://packagist.org/packages/ehann/frontend-bundle)[ Docs](http://ethanhann.org)[ RSS](/packages/ehann-frontend-bundle/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependencies (12)Versions (6)Used By (0)

EhannFrontendBundle
===================

[](#ehannfrontendbundle)

Twitter Bootstrap-ready frontend and layout bundle for Symfony2.

### Twig Layouts

[](#twig-layouts)

The bundle provides two Twig templates for layouts (you can extend either or both):

1. EhannFrontendBundle::base.html.twig
2. EhannFrontendBundle:layouts:bootstrap.html.twig

The **EhannFrontendBundle::base.html.twig** template contains a boilerplate set of Twig blocks and the Modernizr library (version set in composer.json).

The **EhannFrontendBundle:layouts:bootstrap.html.twig** template extends the EhannFrontendBundle::base.html.twig template and adds **jQuery**, **Twitter Bootstrap**, **Font-Awesome**, **Bootbox**, and **Bootstrap DateTime Picker**. With the exception of Font-Awesome, the versions of all of these libraries are controlled by the EhannFrontendBundle's composer.json file. Font-Awesome is not installed via composer because of limitations with Assetic - there does not appear to be a way to rewrite fonts using Assetic. This means that Font-Awesome cannot locate its font files if it is installed outside of a bundle without a filesystem/symlink hack.

### Bootstrap Forms

[](#bootstrap-forms)

Twitter Bootstrap expects the HTML in forms to be structured in a specific way. When you include the **EhannFrontendBundle:forms:bootstrap\_form\_layout.html.twig** template, the HTML in Twig's default form blocks are restructured to be Twitter Bootstrap-compatible.

### Assetic Filters

[](#assetic-filters)

This EhannFrontendBundle also has a tricked-out Assetic configuration with various configured filters for your use. The tools associated with these filters are downloaded when you install the module. The filters are:

1. phpcssembed
2. yui\_css
3. yui\_js
4. lessphp
5. scssphp

### Related Bundles

[](#related-bundles)

[EhannNotificationBundle](https://github.com/ethanhann/EhannNotificationBundle) - Utilizes the [Symfony2 flash message feature](http://symfony.com/doc/current/components/http_foundation/sessions.html#flash-messages) to add Twitter Bootstrap-ready notifications to your application.

Installation
------------

[](#installation)

Add EhannFrontEndBundle in your composer.json:

```
// composer.json
{
    "require": {
        "ehann/frontend-bundle": "0.*"
    }
}
```

Download bundle:

```
$ php composer.phar update ehann/frontend-bundle
```

Add the EhannFrontendBundle to your AppKernel.php

```
public function registerBundles()
{
    $bundles = array(
        ...
        new Ehann\FrontendBundle\EhannFrontendBundle(),
        ...
    );
    ...
}
```

Add the EhannFrontendBundle assetic.yml file into your application config file.

```
# app/config/config.yml
imports:
    - { resource: "@EhannFrontendBundle/Resources/config/assetic.yml" }
```

### Composer Repositories

[](#composer-repositories)

Composer repositories can only be defined in the root application's composer.json file. Add these respoistories to your application's composer.json file:

```
// composer.json
"repositories": [
    {
        "type": "package",
        "package": {
            "name": "yui/yui-compressor",
            "version": "2.4.7",
            "dist": {
                "url": "https://github.com/downloads/yui/yuicompressor/yuicompressor-2.4.7.zip",
                "type": "zip"
            }
        }
    },
    {
        "type": "package",
        "package": {
            "version": "v3.2.0",
            "name": "makeusabrew/bootbox",
            "source": {
                "url": "https://github.com/makeusabrew/bootbox.git",
                "type": "git",
                "reference": "master"
            },
            "dist": {
                "url": "https://github.com/makeusabrew/bootbox/zipball/v3.2.0",
                "type": "zip"
            }
        }
    },
    {
        "type": "package",
        "package": {
            "version": "v0.0.11",
            "name": "tarruda/bootstrap-datetimepicker",
            "source": {
                "url": "https://github.com/tarruda/bootstrap-datetimepicker.git",
                "type": "git",
                "reference": "master"
            },
            "dist": {
                "url": "https://github.com/tarruda/bootstrap-datetimepicker/zipball/v0.0.11",
                "type": "zip"
            }
        }
    }
]
```

Config
------

[](#config)

Specify the global default layout template, making it accessible to all bundles in your application.

```
# app/config/config.yml
ehann_frontend:
    default_layout: "EhannFrontendBundle:layouts:bootstrap.html.twig"
```

Extend your own templates by extending the default layout.

```
{% extends ehann_frontend_default_layout  %}
```

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~5 days

Total

4

Last Release

4701d ago

Major Versions

0.0.1 → 1.0.02013-06-16

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/402597?v=4)[Ethan Hann](/maintainers/ethanhann)[@ethanhann](https://github.com/ethanhann)

---

Top Contributors

[![ethanhann](https://avatars.githubusercontent.com/u/402597?v=4)](https://github.com/ethanhann "ethanhann (36 commits)")

---

Tags

bundleSymfony2twitterbootstrapfrontend

### Embed Badge

![Health badge](/badges/ehann-frontend-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/ehann-frontend-bundle/health.svg)](https://phpackages.com/packages/ehann-frontend-bundle)
```

###  Alternatives

[cwspear/bootstrap-hover-dropdown

An unofficial Bootstrap plugin to enable Bootstrap dropdowns to activate on hover and provide a nice user experience.

1.3k153.1k](/packages/cwspear-bootstrap-hover-dropdown)[mdm/translator-checker-bundle

Help you to check all your twig strings was translated - and all your translation keys exists

144.5k](/packages/mdm-translator-checker-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
