PHPackages                             phpsoftbox/code-generator - 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. phpsoftbox/code-generator

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

phpsoftbox/code-generator
=========================

Code generator helpers for the PhpSoftBox framework

017PHP

Since Mar 5Pushed 2mo agoCompare

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

READMEChangelogDependenciesVersions (1)Used By (0)

PhpSoftBox CodeGenerator
========================

[](#phpsoftbox-codegenerator)

About
-----

[](#about)

`phpsoftbox/code-generator` — набор утилит для генерации кода и базовых CLI-команд. Включает `AbstractMakeCommandHandler`, `CodeGenerator`, `GeneratorTarget` и `FileWriter`.

Quick Start
-----------

[](#quick-start)

```
use PhpSoftBox\CodeGenerator\Cli\AbstractMakeCommandHandler;
use PhpSoftBox\CodeGenerator\CodeGenerator;
use PhpSoftBox\CodeGenerator\GeneratorTarget;
use PhpSoftBox\CliApp\Runner\RunnerInterface;

final class MakeFooHandler extends AbstractMakeCommandHandler
{
    protected function missingNameMessage(): string
    {
        return 'Имя класса не задано.';
    }

    protected function successMessage(GeneratorTarget $target): string
    {
        return 'Создан класс: ' . $target->path;
    }

    protected function renderEvent(RunnerInterface $runner, GeneratorTarget $target): string
    {
        $generator = new CodeGenerator();

        return $generator->renderClass(
            className: $target->className,
            namespace: $target->namespace,
        );
    }
}
```

Пример генерации класса с атрибутом:

```
$generator = new CodeGenerator();

$code = $generator->renderClass(
    className: 'WelcomeListener',
    namespace: 'App\\Listeners',
    uses: [
        'App\\Events\\UserRegistered',
        'PhpSoftBox\\Events\\Attributes\\ListenTo',
    ],
    classAttributes: ['#[ListenTo(UserRegistered::class)]'],
    bodyLines: [
        'public function handle(UserRegistered $event): void',
        '{',
        '}',
    ],
);
```

Оглавление
----------

[](#оглавление)

- [Документация](docs/index.md)
- [About](docs/01-about.md)
- [Quick Start](docs/02-quick-start.md)

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance57

Moderate activity, may be stable

Popularity8

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity12

Early-stage or recently created project

 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/0279d150240c97d210034878b0467462246dc14d29b5618157ff6a8be49a50e3?d=identicon)[inspector-who](/maintainers/inspector-who)

---

Top Contributors

[![inspector-who](https://avatars.githubusercontent.com/u/6973963?v=4)](https://github.com/inspector-who "inspector-who (1 commits)")

### Embed Badge

![Health badge](/badges/phpsoftbox-code-generator/health.svg)

```
[![Health](https://phpackages.com/badges/phpsoftbox-code-generator/health.svg)](https://phpackages.com/packages/phpsoftbox-code-generator)
```

###  Alternatives

[broadway/uuid-generator

UUID generator for broadway/broadway.

202.1M11](/packages/broadway-uuid-generator)

PHPackages © 2026

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