PHPackages                             beauty-framework/module-support - 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. beauty-framework/module-support

ActiveLibrary[Framework](/categories/framework)

beauty-framework/module-support
===============================

Beauty Module Support

1.0.1(11mo ago)031MITPHPPHP &gt;=8.1

Since Jun 22Pushed 11mo agoCompare

[ Source](https://github.com/beauty-framework/module-support)[ Packagist](https://packagist.org/packages/beauty-framework/module-support)[ RSS](/packages/beauty-framework-module-support/feed)WikiDiscussions main Synced 1mo ago

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

Beauty Framework: Module Support
================================

[](#beauty-framework-module-support)

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

[](#installation)

Add the package to your project via Composer:

```
composer require beauty-framework/module-support
```

The next step is to write the routing in the config `config/router.php`:

```
return [
    'controllers' => [
        __DIR__ . '/../modules/*/src/Controllers/**/*Controller.php',
    ],
];
```

And at the last step, in `bootstrap/kernel.php` add

```
$bootstrap = new class {
    use \Beauty\Module\Core\HasModuleSupportTrait;

    /**
     * @return object
     * @property array $middlewares
     * @property ContainerManager $containerManager
     * @property array $routerConfig
     */
    public function boot(): object
    {
    // ...
    }

    // ...
}
```

And in the same file, in the `initContainerManager` method, add the following to line `83`:

```
        return ContainerManager::bootFrom(array_merge(
            $containers,
            $this->findModuleContainerClasses(),
            [Config::class, Base::class, DI::class]
        ));
```

Quick Start: Module Generation
------------------------------

[](#quick-start-module-generation)

### 1. Generate a new module

[](#1-generate-a-new-module)

Use the built-in command to generate a new module:

```
./beauty generate:module
```

- `` — your module name (in lowercase; dashes and underscores will automatically be converted to StudlyCase for the namespace).
- The module will appear in `modules/`, with a ready-to-use `src/` structure and standard subfolders.

#### Example:

[](#example)

```
./beauty generate:module hello-world
```

This will create:

```
modules/hello-world/
 ├─ src/
 │   ├─ Controllers/
 │   ├─ Services/
 │   ├─ Repositories/
 │   ├─ Middlewares/
 │   ├─ Entities/
 │   ├─ DTO/
 │   ├─ Events/
 │   └─ Listeners/
 │   └─ Container/DI.php
 └─ composer.json

```

- The module's composer.json will contain a ready psr-4 autoloading config with the namespace `Module\HelloWorld\`.
- The root composer.json will be automatically patched with a path repository and dependency on your new module.

---

### 2. Register the module generation command

[](#2-register-the-module-generation-command)

To make the `generate:module` command available for all CLI Beauty runs, register it in your config:

Open `config/commands.php` and add:

```
return [
    ...
    \Beauty\Module\Console\RegisterCommands::commands(),
    ...
];
```

---

Done!
-----

[](#done)

Now you can create new modules with a single command. Beauty will handle the rest.

For custom templates or advanced file generation, see the "Advanced Usage" section in the upcoming documentation.

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance53

Moderate activity, may be stable

Popularity3

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity46

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

Every ~0 days

Total

2

Last Release

330d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/068f8c26f06f513a9c38d2a01c4d90a85eae1125a5b9d14eae7059715be860e4?d=identicon)[m1n64](/maintainers/m1n64)

---

Top Contributors

[![m1n64](https://avatars.githubusercontent.com/u/24874264?v=4)](https://github.com/m1n64 "m1n64 (2 commits)")

---

Tags

modulebeauty

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/beauty-framework-module-support/health.svg)

```
[![Health](https://phpackages.com/badges/beauty-framework-module-support/health.svg)](https://phpackages.com/packages/beauty-framework-module-support)
```

###  Alternatives

[nwidart/laravel-modules

Laravel Module management

6.1k14.6M274](/packages/nwidart-laravel-modules)[internachi/modular

Modularize your Laravel apps

1.1k662.4k8](/packages/internachi-modular)[pingpong/modules

Laravel Modules

592188.7k13](/packages/pingpong-modules)[mhmiton/laravel-modules-livewire

Using Laravel Livewire in Laravel Modules package with automatically registered livewire components for every modules.

236409.6k9](/packages/mhmiton-laravel-modules-livewire)[artem-schander/l5-modular

Modular pattern generator for Laravel

223235.5k](/packages/artem-schander-l5-modular)[luyadev/luya-module-cms

The LUYA CMS module provides a full functional Content Management System for adding contents based on blocks.

32176.1k18](/packages/luyadev-luya-module-cms)

PHPackages © 2026

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