PHPackages                             butterweed/sf1-embedder-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. butterweed/sf1-embedder-bundle

AbandonedSymfony-bundle

butterweed/sf1-embedder-bundle
==============================

symfony 1.x Embedder Bundle

101005[2 issues](https://github.com/marfillaster/ButterweedSF1EmbedderBundle/issues)PHP

Since Jun 28Pushed 11y ago5 watchersCompare

[ Source](https://github.com/marfillaster/ButterweedSF1EmbedderBundle)[ Packagist](https://packagist.org/packages/butterweed/sf1-embedder-bundle)[ RSS](/packages/butterweed-sf1-embedder-bundle/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (2)Used By (0)

symfony 1.x Embedder Bundle
===========================

[](#symfony-1x-embedder-bundle)

This bundle embedds symfony applications inside a Symfony2 application. It will allow developers who want to port their legacy projects to Symfony2 in an iterative manner by providing automatic fallback of requests. Take note that there will be some runtime overhead.

This is still beta and currently only tested(manually) on symfony 1.2.

In order for this to work, a symfony plugin must be installed in the legacy app.

Features
--------

[](#features)

- Supports multiple applications from multiple projects (provided they are all accessible locally on disk).
- Automatically matches debug and env settings.
- Auto signin of sfuser and even supports user switching.
- All symfony exception will be handled by Symfony2.
- Both symfony and Symfony2 debug toolbar shows!

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

[](#installation)

Add a requirement for `butterweed/sf1-embedder-bundle` to your composer.json and add the bundle in your AppKernel.php

```
new Symfony\Cmf\Bundle\RoutingBundle\CmfRoutingBundle(),
new Butterweed\SF1EmbedderBundle\ButterweedSF1EmbedderBundle()

```

Configuration
-------------

[](#configuration)

```
# config.yml
butterweed_sf1_embedder:
    map:
        main:
            prefix: /  # uses strpos to match againts pathinfo
            hosts: ["example.com"] # optional host match
            app: frontend
            path: "%kernel.root_dir%/../legacy"

cmf_routing:
    chain:
        routers_by_id:
            router.default: 100
            butterweed_sf1_embedder.router: 0

```

Auto signin of sfGuardUser
--------------------------

[](#auto-signin-of-sfguarduser)

Fos user and custom implementations are supported. Automatic signin happens when `GuardUserInterface` is implemented on the User model. `security.context` token is required.

```
interface GuardUserInterface
{
    /**
     * return \sfGuardUser
     */
    public function getGuardUser();

    /**
     * return boolean
     */
    public function equalsGuard($user);
}

```

Making symfony embed aware
--------------------------

[](#making-symfony-embed-aware)

The objective of this bundle is to not touch the legacy app as much as possible given the fact that the main task is porting to the newer version. The embedded app can remain as a separated project. However, there are internal changes that needs to be applied. Luckily, symfony is very pluggable via factories.yml and filters.yml. This bundle provides a symfony plugin that has the custom classes.

To install plugin, copy or better symlink `butterweedEmbeddedAwarePlugin` located in `Resources/extra` into the plugins directory the hook up the new classes.

```
# apps/frontend/config/filters.yml
rendering:
    class: EmbeddedAwareRenderingFilter

# apps/frontend/config/factories.yml
controller:
    class: EmbeddedAwareFrontWebController
request:
    class: EmbedAwareWebRequest

```

That's it! You may need to `./symfony cc --env=prod`.

Gothas
------

[](#gothas)

You will need to symlink the assets using the prefix as subdirectory name.

```
# Example
cd /web
ln -s /legacy/web backend

```

For app mounted in root (/), additional rewrite is required.

```
# example nginx conf
location ~ ^/(?!legacy).+\.(gif|css|js|png|jpeg|jpg)$ {
    try_files $uri /legacy$uri;
}

```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 78.9% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/642ac3b39f2ba34d63292f4246632dae75b19d7a59c48ad7188b709dab7f81ef?d=identicon)[butterweed](/maintainers/butterweed)

---

Top Contributors

[![marfillaster](https://avatars.githubusercontent.com/u/121793?v=4)](https://github.com/marfillaster "marfillaster (15 commits)")[![glorpen](https://avatars.githubusercontent.com/u/990336?v=4)](https://github.com/glorpen "glorpen (2 commits)")[![Adel-E](https://avatars.githubusercontent.com/u/285700?v=4)](https://github.com/Adel-E "Adel-E (1 commits)")[![Seldaek](https://avatars.githubusercontent.com/u/183678?v=4)](https://github.com/Seldaek "Seldaek (1 commits)")

### Embed Badge

![Health badge](/badges/butterweed-sf1-embedder-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/butterweed-sf1-embedder-bundle/health.svg)](https://phpackages.com/packages/butterweed-sf1-embedder-bundle)
```

PHPackages © 2026

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