PHPackages                             hmaus/spas-parser - 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. hmaus/spas-parser

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

hmaus/spas-parser
=================

Common interfaces for spas parsers

v2.2.0(9y ago)14282MITPHPPHP &gt;=7.0

Since Aug 30Pushed 9y ago2 watchersCompare

[ Source](https://github.com/hendrikmaus/spas-parser)[ Packagist](https://packagist.org/packages/hmaus/spas-parser)[ RSS](/packages/hmaus-spas-parser/feed)WikiDiscussions master Synced yesterday

READMEChangelog (8)Dependencies (2)Versions (10)Used By (2)

spas-parser
===========

[](#spas-parser)

Defines common interfaces for creating concrete parsers that work with [spas](https://github.com/hendrikmaus/spas) testing tool.

Details
-------

[](#details)

Spas is a tool to test an API description against a given environment.
As spas itself is description language agnostic, it relies on different concrete implementations of [spas-parser](https://github.com/hendrikmaus/spas-parser) which defines the common interfaces.

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

[](#installation)

The recommended way to install, is using composer:

```
composer require hmaus/spas-parser
```

Implementations
---------------

[](#implementations)

- API Blueprint Refract ParseResult - [spas-parser-apib](https://github.com/hendrikmaus/spas-parser-apib)

How To Create A Parser
----------------------

[](#how-to-create-a-parser)

> Have a look at [spas-parser-apib](https://github.com/hendrikmaus/spas-parser-apib) for a working example

- Start a new composer library
- Implement the `Parser` interface
- To keep things aligned, name your implementation ``, e.g. `Apib`
- The namespace is up to you, I suggest `\Spas\Parser`, e.g. `Hmaus\Spas\Parser`So you end up with `\\Spas\Parser\Apib`
- The `parse` method is supposed to return an array of `ParsedRequest` elements where each contains a `ParsedResponse` to have a request/response pair
- Publish your package on packagist and require it in your toolbox alongside spas to use it

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity64

Established project with proven stability

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

Recently: every ~3 days

Total

8

Last Release

3487d ago

Major Versions

v0.1.0 → v1.0.02016-10-26

v1.2.0 → v2.0.02016-11-30

PHP version history (2 changes)v0.1.0PHP &gt;=5.6

v2.0.0PHP &gt;=7.0

### Community

Maintainers

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

---

Top Contributors

[![hendrikmaus](https://avatars.githubusercontent.com/u/188284?v=4)](https://github.com/hendrikmaus "hendrikmaus (20 commits)")

### Embed Badge

![Health badge](/badges/hmaus-spas-parser/health.svg)

```
[![Health](https://phpackages.com/badges/hmaus-spas-parser/health.svg)](https://phpackages.com/packages/hmaus-spas-parser)
```

###  Alternatives

[symfony/http-kernel

Provides a structured process for converting a Request into a Response

8.1k853.6M8.3k](/packages/symfony-http-kernel)[symfony/framework-bundle

Provides a tight integration between Symfony components and the Symfony full-stack framework

3.6k246.0M11.1k](/packages/symfony-framework-bundle)[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.5M378](/packages/easycorp-easyadmin-bundle)[symfony/security-bundle

Provides a tight integration of the Security component into the Symfony full-stack framework

2.5k181.3M2.2k](/packages/symfony-security-bundle)[symfony/security-http

Symfony Security Component - HTTP Integration

1.7k172.8M351](/packages/symfony-security-http)[api-platform/core

Build a fully-featured hypermedia or GraphQL API in minutes!

2.6k50.1M314](/packages/api-platform-core)

PHPackages © 2026

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