PHPackages                             drufony/kernel-module - 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. [Framework](/categories/framework)
4. /
5. drufony/kernel-module

ActiveDrupal-module[Framework](/categories/framework)

drufony/kernel-module
=====================

Symfony Kernel inside a Drupal site

112PHP

Since Aug 8Pushed 10y ago2 watchersCompare

[ Source](https://github.com/drufony/kernel-module)[ Packagist](https://packagist.org/packages/drufony/kernel-module)[ RSS](/packages/drufony-kernel-module/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

Symfony Kernel
==============

[](#symfony-kernel)

Embed a Symfony Kernel in your Drupal application. When a site visitor requests a Symfony route, the kernel handles the request inside a Drupal page callback.

Normal page delivery can be short circuited entirely so that the Symfony response is always sent, but the normal arrangement is that HTML responses are embedded inside Drupal pages as the `$content` variable in `page.tpl.php`. Non-HTML responses are sent directly to the user.

Usage
-----

[](#usage)

Implement `hook_kernel_info()` and name your Symfony kernel `app` (only one is supported).

The kernel class must be autoloadable (unlike in Symfony's front controllers which include it). Put it in a module's info file.

```
name = My awesome Symfony application
core = 7.x
dependencies[] = kernel
files[] = app/AppKernel.php
```

The `app` and `src` directories in this module are a starting point for your own project.

Use `drush app` to use your Symfony kernel's console commands.

To do
-----

[](#to-do)

- Synchronize kernel events with Drupal bootstrap. See
- Cooperate with Drupal's session handler. See
- Expose Drupal users to Symfony with a UserProvider. See
- Support multiple kernels with [LazyHttpKernel](https://github.com/stackphp/LazyHttpKernel)and [UrlMap](https://github.com/stackphp/url-map).

Known issues
------------

[](#known-issues)

- Symfony web profiler should be disabled in your kernel. It cannot offer an accurate picture of your requests and responses anyway!
- Assetic is hard to use. You can't use the Assetic controller, but you can dump assets and use them from Drupal. Documentation forthcoming.

Screenshots
-----------

[](#screenshots)

[![Drupal running the Symfony Acme Demo bundle](https://camo.githubusercontent.com/b59f7c7b20ed0bc12c14049155f788d87480e3783358990be23870936043edd1/687474703a2f2f62616e67706f756e642e6f72672f6b65726e656c2f64727570616c2e706e67)](https://camo.githubusercontent.com/b59f7c7b20ed0bc12c14049155f788d87480e3783358990be23870936043edd1/687474703a2f2f62616e67706f756e642e6f72672f6b65726e656c2f64727570616c2e706e67)

[![Output of drush app](https://camo.githubusercontent.com/61c222561cab59014711d26113a548143f314e66ebf8ed516575c9a1060a997e/687474703a2f2f62616e67706f756e642e6f72672f6b65726e656c2f64727573682e706e67)](https://camo.githubusercontent.com/61c222561cab59014711d26113a548143f314e66ebf8ed516575c9a1060a997e/687474703a2f2f62616e67706f756e642e6f72672f6b65726e656c2f64727573682e706e67)

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity43

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.

### Community

Maintainers

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

---

Top Contributors

[![bangpound](https://avatars.githubusercontent.com/u/6731?v=4)](https://github.com/bangpound "bangpound (54 commits)")

### Embed Badge

![Health badge](/badges/drufony-kernel-module/health.svg)

```
[![Health](https://phpackages.com/badges/drufony-kernel-module/health.svg)](https://phpackages.com/packages/drufony-kernel-module)
```

###  Alternatives

[laravel/passport

Laravel Passport provides OAuth2 server support to Laravel.

3.4k85.0M532](/packages/laravel-passport)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M259](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

712181.8M596](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)[laravel/pail

Easily delve into your Laravel application's log files directly from the command line.

91545.3M590](/packages/laravel-pail)

PHPackages © 2026

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