PHPackages                             justblackbird/jms-serializer-strict-json - 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. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. justblackbird/jms-serializer-strict-json

ActiveLibrary[Parsing &amp; Serialization](/categories/parsing)

justblackbird/jms-serializer-strict-json
========================================

Provide strict JSON deserialization

0.2.0(9y ago)010.4k12Apache2PHP

Since Apr 25Pushed 9y ago1 watchersCompare

[ Source](https://github.com/JustBlackBird/jms-serializer-strict-json)[ Packagist](https://packagist.org/packages/justblackbird/jms-serializer-strict-json)[ Docs](https://github.com/JustBlackBird/jms-serializer-strict-json)[ RSS](/packages/justblackbird-jms-serializer-strict-json/feed)WikiDiscussions master Synced 2w ago

READMEChangelogDependencies (3)Versions (3)Used By (2)

JMS Serializer Strict JSON [![Build Status](https://camo.githubusercontent.com/4ade5d7a6f195454feb3ba1f2b8d9ff02ff922ba79edc1ad9013a38202c66848/68747470733a2f2f7472617669732d63692e6f72672f4a757374426c61636b426972642f6a6d732d73657269616c697a65722d7374726963742d6a736f6e2e737667)](https://travis-ci.org/JustBlackBird/jms-serializer-strict-json)
======================================================================================================================================================================================================================================================================================================================================================

[](#jms-serializer-strict-json-)

> Deserialize JSON using strict types validation

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

[](#installation)

Run in the command line:

```
composer require justblackbird/jms-serializer-strict-json
```

Usage
-----

[](#usage)

Use the `StrictJsonDeserializationVisitor` from the package instead of JMSSerializer built in `JsonDeserializationVisitor`.

For example, if you use the following code to instantiate JMS serializer:

```
use JMS\Serializer\SerializerBuilder;

$serializer = SerializerBuilder::create()->build();
```

You should change it to something like:

```
use JMS\Serializer\Naming\CamelCaseNamingStrategy;
use JMS\Serializer\Naming\SerializedNameAnnotationStrategy;
use JMS\Serializer\SerializerBuilder;
use JustBlackBird\JmsSerializerStrictJson\StrictJsonDeserializationVisitor;

$naming_strategy = new SerializedNameAnnotationStrategy(new CamelCaseNamingStrategy());
$serializer = SerializerBuilder::create()
    ->setPropertyNamingStrategy($naming_strategy)
    ->setDeserializationVisitor('json', new StrictJsonDeserializationVisitor($naming_strategy))
    ->build();
```

Then use the serializer as you used to.

License
-------

[](#license)

[Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0) (c) Dmitriy Simushev

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community12

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

Total

2

Last Release

3353d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/a2b12a708d5649504df9322541ff13341f5968995c7ea2f8f83a1d19692edf26?d=identicon)[justblackbird](/maintainers/justblackbird)

---

Top Contributors

[![JustBlackBird](https://avatars.githubusercontent.com/u/1167086?v=4)](https://github.com/JustBlackBird "JustBlackBird (18 commits)")

---

Tags

jsonserializerjms

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/justblackbird-jms-serializer-strict-json/health.svg)

```
[![Health](https://phpackages.com/badges/justblackbird-jms-serializer-strict-json/health.svg)](https://phpackages.com/packages/justblackbird-jms-serializer-strict-json)
```

###  Alternatives

[goetas-webservices/xsd2php-runtime

Convert XSD (XML Schema) definitions into PHP classes

4912.0M43](/packages/goetas-webservices-xsd2php-runtime)[goetas-webservices/xsd2php

Convert XSD (XML Schema) definitions into PHP classes and JMS metadata

2391.7M43](/packages/goetas-webservices-xsd2php)[zumba/json-serializer

Serialize PHP variables, including objects, in JSON format. Support to unserialize it too.

125770.3k15](/packages/zumba-json-serializer)[laktak/hjson

JSON for Humans. A configuration file format with relaxed syntax, fewer mistakes and more comments.

86241.3k14](/packages/laktak-hjson)[goetas/xsd2php-runtime

Convert XSD (XML Schema) definitions into PHP classes

493.3k](/packages/goetas-xsd2php-runtime)

PHPackages © 2026

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