PHPackages                             devtia/maintenance-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. devtia/maintenance-bundle

AbandonedArchivedSymfony-bundle[Utility &amp; Helpers](/categories/utility)

devtia/maintenance-bundle
=========================

0.2(6y ago)06.5k—10%MITPHP

Since Mar 4Pushed 5y ago2 watchersCompare

[ Source](https://github.com/devtia/MaintenanceBundle)[ Packagist](https://packagist.org/packages/devtia/maintenance-bundle)[ RSS](/packages/devtia-maintenance-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (1)Versions (3)Used By (0)

MaintenanceBundle
=================

[](#maintenancebundle)

This bundle allows you to display a custom template when your site is under maintenance with a simple change in the parameters and a rapid deployment. This allows you to correct any errors in your application and inform your users almost immediately.

You can also define only some routes (with PHP regex) to display the message.

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

[](#installation)

Download the Bundle.

```
composer require "devtia/maintenance-bundle"
```

Enable the Bundle

```
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...

            new  Devtia\MaintenanceBundle\MaintenanceBundle(),
        );

        // ...
    }

    // ...
}
```

Usage
-----

[](#usage)

You need put something like this in your config.yml

```
maintenance:
  #default false. Set to true for enable the bundle and deploy your code
  enable_maintenance: false
  #not required. You can set multiple routes and a custom template for each one. The routes must be compatible with PHP regex but without initial and end slash ('/')
  routes_prefixes:
    - ['\/admin\/', '%kernel.project_dir%/src/Resources/views/Maintenance/custom_maintenance.html.twig'] #if you left second parameter empty, the bundle use the default template

```

Template functionallity
-----------------------

[](#template-functionallity)

The bundle provides a default template like this:

[![screenshot](https://raw.githubusercontent.com/devtia/MaintenanceBundle/master/src/Resources/doc/default-template.jpg)](https://raw.githubusercontent.com/devtia/MaintenanceBundle/master/src/Resources/doc/default-template.jpg)

You can create a custom template creating a file at this path:

```
ROOT_PATH_TO_YOUR_PROJECT . '/app/Resources/Devtia/MaintenanceBundle/views/maintenance.html.twig

```

If you want more control of your template or need more than one you can define multiple templates in the configuration.

Each template need to be related to a Regex for a group of routes. In the configuration example, the bundle shows the custom\_maintenance.html.twig template in all routes that match with 'admin' pattern.

Regex
-----

[](#regex)

You can learn about PHP regex in this [link](https://www.php.net/manual/es/reference.pcre.pattern.syntax.php) and try them [here](https://regex101.com/).

The MaintenanceBundle simplifies the configuration add to ALL your routes\_prefixes the initial and end slash ('/') and the wildcard .\* at the end. With the configuration example shows above, the bundle create this regex:

```
/\/admin\/.*/

```

This example match with routes like '/admin/', '/admin/login', '/admin/users/create',...

Contact
-------

[](#contact)

You can contact with me on [jaime@devtia.com](jaime@devtia.com).

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 91.7% 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 ~0 days

Total

2

Last Release

2265d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b76aed873aa57de4cea3bc3812803888c28cf8d0f564340045dd6dc5ea8c1256?d=identicon)[jimixjay](/maintainers/jimixjay)

---

Top Contributors

[![jimixjay](https://avatars.githubusercontent.com/u/2587754?v=4)](https://github.com/jimixjay "jimixjay (11 commits)")[![desarrolla2](https://avatars.githubusercontent.com/u/661529?v=4)](https://github.com/desarrolla2 "desarrolla2 (1 commits)")

### Embed Badge

![Health badge](/badges/devtia-maintenance-bundle/health.svg)

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

###  Alternatives

[winzou/state-machine-bundle

Bundle for the very lightweight yet powerful PHP state machine

34010.4M15](/packages/winzou-state-machine-bundle)[stfalcon/tinymce-bundle

This Bundle integrates TinyMCE WYSIWYG editor into a Symfony2 project.

2692.9M24](/packages/stfalcon-tinymce-bundle)[sylius/taxonomy-bundle

Flexible categorization system for Symfony.

26388.2k7](/packages/sylius-taxonomy-bundle)[symfony/ai-bundle

Integration bundle for Symfony AI components

30282.3k6](/packages/symfony-ai-bundle)[sylius/addressing-bundle

Addressing and zone management for Symfony applications.

33221.4k3](/packages/sylius-addressing-bundle)[sylius/inventory-bundle

Flexible inventory management for Symfony applications.

19176.7k4](/packages/sylius-inventory-bundle)

PHPackages © 2026

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