<commit_before># Yadm is a MongoDB ODM.

[![Build Status](https://travis-ci.org/makasim/values.png?branch=master)](https://travis-ci.org/makasim/yadm)

It gives you the fastest hydration and persistent. The easiest solution for building aggregation roots or objects trees.

This approach tries to gather the best from arrays and objects.

Model class and its storage:

```php
<?php

namespace Acme;

use Makasim\Yadm\ValuesTrait;
use Makasim\Yadm\ObjectsTrait;
use Makasim\Yadm\PersistableTrait;
use Makasim\Yadm\Storage;
use Makasim\Yadm\Hydrator;<commit_msg>upd doc.<commit_after># Yadm is a MongoDB ODM.

[![Build Status](https://travis-ci.org/makasim/values.png?branch=master)](https://travis-ci.org/makasim/yadm)

The schema less ODM. It gives you the fastest hydration and persistent. The easiest solution for building aggregation roots or objects trees.

This approach tries to gather the best from arrays and objects.

Model class and its storage:

```php
<?php

namespace Acme;

use Makasim\Yadm\ValuesTrait;
use Makasim\Yadm\ObjectsTrait;
use Makasim\Yadm\PersistableTrait;
use Makasim\Yadm\Storage;
use Makasim\Yadm\Hydrator;
{'fraction_non_alphanumeric': 0.10035211267605634, 'fraction_numerical': 0.0, 'mean_word_length': 5.112903225806452, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1933576', 'n_tokens_mistral': 409, 'n_tokens_neox': 381, 'n_words': 116}