PHPackages                             vierbergenlars/manipulator-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. [Utility &amp; Helpers](/categories/utility)
4. /
5. vierbergenlars/manipulator-bundle

AbandonedArchivedLibrary[Utility &amp; Helpers](/categories/utility)

vierbergenlars/manipulator-bundle
=================================

A set of classes to make modifying Symfony services and routes easier

0.1.0(11y ago)025MITPHP

Since Jun 17Pushed 11y ago1 watchersCompare

[ Source](https://github.com/vierbergenlars/manipulator-bundle)[ Packagist](https://packagist.org/packages/vierbergenlars/manipulator-bundle)[ RSS](/packages/vierbergenlars-manipulator-bundle/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (4)Versions (1)Used By (0)

Manipulator Bundle
==================

[](#manipulator-bundle)

[![Build Status](https://camo.githubusercontent.com/a7a7b7d42cea992497afefe84c89f29cdc603b57acdc03932f01e55d1c84824b/68747470733a2f2f7365637572652e7472617669732d63692e6f72672f7669657262657267656e6c6172732f6d616e6970756c61746f722d62756e646c652e706e673f6272616e63683d6d6173746572)](http://travis-ci.org/vierbergenlars/manipulator-bundle)[![Code Coverage](https://camo.githubusercontent.com/3c536a4ea7f139ad0069da77fabdfc0151083bb6b5b2771502e5d15b396ad456/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f7669657262657267656e6c6172732f6d616e6970756c61746f722d62756e646c652f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/vierbergenlars/manipulator-bundle/?branch=master)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/b918e9b48af12b33d8e1bfc30db029932d0d51f0b5208913a19340b8e28fb5d8/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f7669657262657267656e6c6172732f6d616e6970756c61746f722d62756e646c652f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/vierbergenlars/manipulator-bundle/?branch=master)[![Latest Stable Version](https://camo.githubusercontent.com/dc4f632339e31243675dcc1738cc03b5ae93835ef69fb340e4a24aef31c379f6/68747470733a2f2f706f7365722e707567782e6f72672f7669657262657267656e6c6172732f6d616e6970756c61746f722d62756e646c652f762f737461626c652e737667)](https://packagist.org/packages/vierbergenlars/manipulator-bundle)[![Latest Unstable Version](https://camo.githubusercontent.com/360256d846a2d8ba583fa688ac06e4f33bc7625a7bf94e58e567d67b591e1d91/68747470733a2f2f706f7365722e707567782e6f72672f7669657262657267656e6c6172732f6d616e6970756c61746f722d62756e646c652f762f756e737461626c652e737667)](https://packagist.org/packages/vierbergenlars/manipulator-bundle)[![License](https://camo.githubusercontent.com/92d6ddea4ae1b0a0cd87b84a37e0561447a9670c27f8235a15f8b4a902ecf07b/68747470733a2f2f706f7365722e707567782e6f72672f7669657262657267656e6c6172732f6d616e6970756c61746f722d62756e646c652f6c6963656e73652e737667)](https://packagist.org/packages/vierbergenlars/manipulator-bundle)

A set of classes to make modifying Symfony services and routes easier.

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

[](#installation)

```
composer require vierbergenlars/manipulator-bundle
```

Usage
-----

[](#usage)

All manipulators require the path to be passed in their constructor. The file must already exist and have a valid structure.

The `write()` method writes all changes to the original file.

### Modify services

[](#modify-services)

Use `XmlServiceManipulator` or `YamlServiceManipulator`, depending on the type of the configuration file.

- `addService(string $id, Definition $service)`: adds a service to the configuration. Pass the service id, and the [Symfony DI Definition](http://symfony.com/doc/current/components/dependency_injection/definitions.html#working-with-a-definition)
- `removeService(string $id)`: remove a service from the configuration.

### Modify routing

[](#modify-routing)

Use `XmlRouteManipulator` or `YamlRouteManipulator`, depending on the type of the configuration file.

- `addRoute(string $name, array $options)`: Adds a route to the configuration.
- `removeRoute(string $name)`: Removes a route from the configuration.
- `addImport(string $resource, array $options)`: Adds an import of a resource to the configuration
- `removeImport(string $resource)`: Removes an import from the configuration.

#### `$options`

[](#options)

An array of configuration options for the route or import.

The options correspond to the settings structure in a routing YAML file, but they are listed below for reference.

[Have a look at the symfony documentation](http://symfony.com/doc/current/book/routing.html#creating-routes)

KeyTypeDescriptionpathstringPath that the route will match (route only)typestringType of the import (import only)prefixstringPath to prepend to imported routes (import only)hoststringHost to match for the route(s)schemesstringHTTP schemes the route(s) will respond tomethodsstringHTTP methods the route(s) will respond todefaultsarrayMap of default settings for variables in the routerequirementsarrayMap of requirements for variables in the routeoptionsarrayMap of internal options for the route (rarely used)conditionstringCustom condition that determines if the route matches

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

4347d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/18169985c64a307450da907595cc928bec99e316c0b8da5114b2708691ad8e6d?d=identicon)[vierbergenlars](/maintainers/vierbergenlars)

---

Top Contributors

[![vierbergenlars](https://avatars.githubusercontent.com/u/1194648?v=4)](https://github.com/vierbergenlars "vierbergenlars (5 commits)")

### Embed Badge

![Health badge](/badges/vierbergenlars-manipulator-bundle/health.svg)

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

###  Alternatives

[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

96374.6k23](/packages/friendsoftypo3-content-blocks)[netgen/layouts-core

Netgen Layouts enables you to build and manage complex web pages in a simpler way and with less coding. This is the core of Netgen Layouts, its heart and soul.

3689.4k10](/packages/netgen-layouts-core)[netgen/content-browser

Netgen Content Browser is a Symfony bundle that provides an interface which selects items from any kind of backend and returns the IDs of selected items back to the calling code.

14112.1k8](/packages/netgen-content-browser)[sineflow/clamav

ClamAV PHP Client for Symfony

10168.5k](/packages/sineflow-clamav)[aeliot/todo-registrar

Register TODOs from source code in issue tracker

153.0k](/packages/aeliot-todo-registrar)

PHPackages © 2026

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