PHPackages                             orisai/nette-object-mapper - 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. [API Development](/categories/api)
4. /
5. orisai/nette-object-mapper

ActiveLibrary[API Development](/categories/api)

orisai/nette-object-mapper
==========================

Orisai Object Mapper integration for Nette

0.3.0(1y ago)428.5k↑237.5%MPL-2.0PHPPHP 7.4 - 8.4CI failing

Since Jul 4Pushed 1y ago1 watchersCompare

[ Source](https://github.com/orisai/nette-object-mapper)[ Packagist](https://packagist.org/packages/orisai/nette-object-mapper)[ Docs](https://github.com/orisai/nette-object-mapper)[ RSS](/packages/orisai-nette-object-mapper/feed)WikiDiscussions v1.x Synced 3w ago

READMEChangelogDependencies (16)Versions (4)Used By (0)

 [![Orisai](https://github.com/orisai/.github/raw/main/images/repo_title.png?raw=true)](https://github.com/orisai/.github/blob/main/images/repo_title.png?raw=true)
 Nette Object Mapper
==========================================================================================================================================================================================

[](#nette-object-mapper)

 Orisai Object Mapper integration for Nette

 📄 Check out our [documentation](docs/README.md).

 💸 If you like Orisai, please [make a donation](https://orisai.dev/sponsor). Thank you!

 [![](https://github.com/orisai/nette-object-mapper/actions/workflows/ci.yaml/badge.svg?branch=v1.x)](https://github.com/orisai/nette-object-mapper/actions?query=workflow:CI+branch:v1.x) [![](https://camo.githubusercontent.com/8a7df1568974b5a0f8f1d8cf77e29054d5cb82b2974d361dea7be2217f4dd022/68747470733a2f2f62616467656e2e6e65742f636f766572616c6c732f632f6769746875622f6f72697361692f6e657474652d6f626a6563742d6d61707065722f76312e783f63616368653d333030)](https://coveralls.io/github/orisai/nette-object-mapper?branch=v1.x) [![](https://camo.githubusercontent.com/f0c80918b6e15d5797d01d736cea059f19d2d40b82d173b015228cdaec60c803/68747470733a2f2f696d672e736869656c64732e696f2f656e64706f696e743f7374796c653d666c61742675726c3d68747470733a2f2f62616467652d6170692e737472796b65722d6d757461746f722e696f2f6769746875622e636f6d2f6f72697361692f6e657474652d6f626a6563742d6d61707065722f76312e78)](https://dashboard.stryker-mutator.io/reports/github.com/orisai/nette-object-mapper/v1.x) [![](https://camo.githubusercontent.com/f221583d336b325590caa76f1ed44e56e1ea0845a6384ab56843a3a1874f6b23/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f64742f6f72697361692f6e657474652d6f626a6563742d6d61707065723f63616368653d33363030)](https://packagist.org/packages/orisai/nette-object-mapper) [![](https://camo.githubusercontent.com/8e4c7337c62be8a0876a46008f24a9e6c6d6cf0144e4edf309ac5076ab46adcf/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f762f6f72697361692f6e657474652d6f626a6563742d6d61707065723f63616368653d33363030)](https://packagist.org/packages/orisai/nette-object-mapper) [![](https://camo.githubusercontent.com/40b2374865c7727b1568a7b77cc1a8068979ac265d85d659fe73b2d337b458e6/68747470733a2f2f62616467656e2e6e65742f62616467652f6c6963656e73652f4d504c2d322e302f626c75653f63616368653d33363030)](https://choosealicense.com/licenses/mpl-2.0/)

```
use Orisai\ObjectMapper\MappedObject;
use Orisai\ObjectMapper\Rules\MappedObjectValue;
use Orisai\ObjectMapper\Rules\StringValue;

final class UserInput implements MappedObject
{

	/** @StringValue(notEmpty=true) */
	public string $firstName;

	/** @StringValue(notEmpty=true) */
	public string $lastName;

	/** @MappedObjectValue(UserAddressInput::class) */
	public UserAddressInput $address;

}
```

```
use Orisai\ObjectMapper\MappedObject;
use Orisai\ObjectMapper\Rules\StringValue;

final class UserAddressInput implements MappedObject
{

	/** @StringValue(notEmpty=true) */
	public string $street;

	// ...
}
```

```
use Orisai\ObjectMapper\Exception\InvalidData;
use Orisai\ObjectMapper\Printers\ErrorVisualPrinter;
use Orisai\ObjectMapper\Printers\TypeToStringConverter;
use Orisai\ObjectMapper\Processing\Processor;

$processor = $container->getByType(Processor::class);
$errorPrinter = new ErrorVisualPrinter(new TypeToStringConverter());

$data = [
	'firstName' => 'Tony',
	'lastName' => 'Stark',
	'address' => [
		'street' => '10880 Malibu Point',
	],
];

try {
	$user = $processor->process($data, UserInput::class);
} catch (InvalidData $exception) {
	$error = $errorPrinter->printError($exception);

	throw new Exception("Validation failed due to following error:\n$error");
}

echo "User name is: {$user->firstName} {$user->lastName}";
```

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance39

Infrequent updates — may be unmaintained

Popularity29

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity54

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 ~189 days

Total

4

Last Release

518d ago

Major Versions

0.3.0 → v1.x-dev2025-01-21

PHP version history (3 changes)0.1.0PHP &gt;=7.4.0 &lt;8.3.0

0.1.1PHP 7.4 - 8.3

0.3.0PHP 7.4 - 8.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/20974277?v=4)[Marek Bartoš](/maintainers/mabar)[@mabar](https://github.com/mabar)

---

Top Contributors

[![mabar](https://avatars.githubusercontent.com/u/20974277?v=4)](https://github.com/mabar "mabar (26 commits)")

---

Tags

apiarrayconversionhydratormappermappingnetteobjectorisaiparserparsingphpschemavalidationapischemavalidatorvalidationarraynetteparserconversionobjectmappingmapperhydratorparsingorisai

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/orisai-nette-object-mapper/health.svg)

```
[![Health](https://phpackages.com/badges/orisai-nette-object-mapper/health.svg)](https://phpackages.com/packages/orisai-nette-object-mapper)
```

###  Alternatives

[orisai/object-mapper

Raw data mapping to validated objects

1133.6k2](/packages/orisai-object-mapper)[cuyz/valinor

Dependency free PHP library that helps to map any input into a strongly-typed structure.

1.5k11.7M153](/packages/cuyz-valinor)[art4/json-api-client

JSON API client

138801.0k8](/packages/art4-json-api-client)[rekalogika/mapper

An object mapper for PHP and Symfony. Maps an object to another object. Primarily used for transforming an entity to a DTO and vice versa.

3850.9k1](/packages/rekalogika-mapper)

PHPackages © 2026

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