PHPackages                             ubfr/c5tools - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. ubfr/c5tools

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ubfr/c5tools
============

COUNTER Release 5.x Tools

v0.8.3(4mo ago)3412[5 issues](https://github.com/ubfr/c5tools/issues)Apache-2.0PHPPHP &gt;=8.2

Since Aug 5Pushed 4mo ago1 watchersCompare

[ Source](https://github.com/ubfr/c5tools)[ Packagist](https://packagist.org/packages/ubfr/c5tools)[ Docs](https://github.com/ubfr/c5tools)[ RSS](/packages/ubfr-c5tools/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (6)Versions (5)Used By (0)

COUNTER Release 5.x Tools (c5tools)
===================================

[](#counter-release-5x-tools-c5tools)

C5tools is a PHP library for fetching, parsing and validating COUNTER reports and COUNTER API (formerly SUSHI) responses. The main features are:

- Support for COUNTER Release 5 and Release 5.1
- Support for COUNTER Reports and Standard Views in both JSON and tabular format
- Support for common extensions as specified in Section 11 of the COUNTER Code of Practice
- A COUNTER API client that supports all COUNTER API paths and parameters
- Generating validation reports in text, Excel and JSON format
- Parsed COUNTER reports and API responses are available for further processing

The c5tools were originally developed for the German National Statistics Service ([NatStat](https://statistik.hebis.de/)) and later extended for performing the validation in the former COUNTER Validation Tool and now the [COUNTER Validator](https://validator.countermetrics.org/).

Please see the [COUNTER Metrics website](https://countermetrics.org/), the [COUNTER Code of Practice](https://cop5.countermetrics.org/) and the [COUNTER API Specification](https://countermetrics.stoplight.io/) for more information on COUNTER Metrics and the COUNTER standard.

Requirements
------------

[](#requirements)

Running the c5tools requires [PHP](https://www.php.net/) (8.2 or newer) and [Composer](https://getcomposer.org/) for managing the dependencies.

Running the c5tools in a [Docker](https://www.docker.com/) container is also supported, in this case only Docker is required.

Installation via Packagist
--------------------------

[](#installation-via-packagist)

PHP applications that use Composer can install the c5tools via [Packagist](https://packagist.org/) by requiring the ubfr/c5tools package.

Running the Demo Scripts
------------------------

[](#running-the-demo-scripts)

For running the scripts in the [demo directory](demo) please clone the project, install Composer in the project directory and run

```
php composer.phar install
```

to install the dependencies. Then run

```
php demo/validate_file.php
php demo/validate_api.php
```

to get a short help on using the demo scripts for validating COUNTER report files and COUNTER API requests and responses.

Running a Docker Container
--------------------------

[](#running-a-docker-container)

The Docker setup was provided by [@beda42](https://www.github.com/beda42), it is used by the [COUNTER Validator](https://github.com/Project-Counter/counter-validator) and was tested with Docker 27.3 and 28.2. The Docker container provides a simple REST API for performing COUNTER report file and COUNTER API validations (see the [public directory](public)).

For creating and running the Docker container please clone the project and run

```
docker compose up
```

in the project directory. A request to validate a COUNTER report file in Excel format for example could be submitted with [curl](https://curl.se/):

```
curl --data-binary '@/path/to/reportfile.xlsx' 'http://127.0.0.1:8180/file.php?extension=xlsx'
```

Note that the extension parameter in the URL must match the usual file extensions for the type of file submitted (e.g. json, tsv, csv, or xlsx). A COUNTER API validation can be performed by submitting the COUNTER API URL:

```
curl -d '{ "url": "https://counter.api.server/path/r51/status" }' 'http://127.0.0.1:8180/api.php'
```

For better readability the response could be piped through `jq .`

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance54

Moderate activity, may be stable

Popularity12

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity42

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

Total

4

Last Release

146d ago

### Community

Maintainers

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

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

---

Top Contributors

[![berndoberknapp](https://avatars.githubusercontent.com/u/8933431?v=4)](https://github.com/berndoberknapp "berndoberknapp (6 commits)")

###  Code Quality

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/ubfr-c5tools/health.svg)

```
[![Health](https://phpackages.com/badges/ubfr-c5tools/health.svg)](https://phpackages.com/packages/ubfr-c5tools)
```

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M3.1k](/packages/craftcms-cms)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k43](/packages/civicrm-civicrm-core)[blair2004/nexopos

The Free Modern Point Of Sale System build with Laravel, TailwindCSS and Vue.js.

1.2k2.4k](/packages/blair2004-nexopos)[oat-sa/tao-core

TAO core extension

66143.7k122](/packages/oat-sa-tao-core)[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1235.9k20](/packages/fleetbase-core-api)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

273.0k](/packages/eslazarev-wildberries-sdk)

PHPackages © 2026

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