Skip to content

KaririCode Transformer v2.0.0

Latest

Choose a tag to compare

@walmir-silva walmir-silva released this 05 Mar 19:23
1359295

KaririCode\Transformer v2.0.0

Composable, rule-based data transformation engine for PHP 8.4+.
32 built-in rules across 7 namespaces, #[Transform] attribute-driven
pipelines, zero runtime dependencies, and 100% test coverage. ARFA 1.3 compliant.

Installation

composer require kariricode/transformer

Quick Start

use KaririCode\Transformer\Attribute\Transform;
use KaririCode\Transformer\Provider\TransformerServiceProvider;

final class UserDto
{
    #[Transform('string.camel_case')]
    public string $name = '';

    #[Transform('string.snake_case')]
    public string $slug = '';
}

$transformer = (new TransformerServiceProvider())->createAttributeTransformer();
$dto = new UserDto(name: 'hello world', slug: 'Hello World');
$transformer->transform($dto);

echo $dto->name; // 'helloWorld'
echo $dto->slug; // 'hello_world'

Quality Metrics

Metric Value
Tests 181 passing
Assertions 482
PHPStan Level 9 (0 errors)
Psalm 100% (0 errors)
Coverage 100% (47 classes)
Rules 32 built-in across 7 namespaces
Dependencies 0 (runtime)
PHP Version 8.4+

See CHANGELOG.md for details.