PHPackages                             fab/doi-system - 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. fab/doi-system

ActiveTypo3-cms-extension[API Development](/categories/api)

fab/doi-system
==============

DOI System - OAI server emulation. OAI stands for Open Archives Initiative, a protocol for Metadata Harvesting.

v11.x-dev(3y ago)252GPL-2.0-or-laterPHP

Since Aug 20Pushed 3y ago6 watchersCompare

[ Source](https://github.com/Ecodev/doi_system)[ Packagist](https://packagist.org/packages/fab/doi-system)[ Docs](https://github.com/Ecodev/doi_system)[ RSS](/packages/fab-doi-system/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

DOI System for TYPO3 CMS
========================

[](#doi-system-for-typo3-cms)

This is a TYPO3 CMS extension emulating an OAI server. OAI stands for Open Archives Initiative, a protocol for Metadata Harvesting.

The URLs given as example are encoded.

```
# Return all document
http://domain.tld/doi/

```

Under the hood, the URL is decoded and corresponds to something like::

```
http://domain.tld/index.php?eID=doi_system&route=users/1;

```

Configuration
=============

[](#configuration)

The configuration is done via TypoScript.

Installation
============

[](#installation)

1. Install via composer or clone the extension into /path/typo3conf/ext/.

    $ composer require fab/doi-system
2. Go to Extension Manager and activate the extension doi\_system.
3. Add a rewrite rule to your .htaccess:

    RewriteRule ^doi/(.\*)$ /index.php?eID=doi\_system \[QSA,L\]

or, if you are using Nginx:

```
rewrite ^/doi/(.*)$ /index.php?eID=doi_system last;

```

Now you can start fetching content with `doi/`.

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity36

Early-stage or recently created project

 Bus Factor1

Top contributor holds 96.3% 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

Unknown

Total

1

Last Release

1416d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/9df52765d70098f094d02c41a2fda5b108b30ba7e58383dd79c5eda0f286dd21?d=identicon)[fudriot](/maintainers/fudriot)

---

Top Contributors

[![fabarea](https://avatars.githubusercontent.com/u/620730?v=4)](https://github.com/fabarea "fabarea (26 commits)")[![PowerKiKi](https://avatars.githubusercontent.com/u/72603?v=4)](https://github.com/PowerKiKi "PowerKiKi (1 commits)")

---

Tags

doiprotocoltypo3typo3-extensionTYPO3 CMSOAI serverDOI system

### Embed Badge

![Health badge](/badges/fab-doi-system/health.svg)

```
[![Health](https://phpackages.com/badges/fab-doi-system/health.svg)](https://phpackages.com/packages/fab-doi-system)
```

###  Alternatives

[friendsoftypo3/interest

REST and CLI API for adding, updating, and deleting records in TYPO3. Tracks relations so records can be inserted in any order. Uses remote ID mapping so you don't have to keep track of what UID a record has gotten after import. Data is inserted using backend APIs as if a real human did it, so you can can inspect the record history and undo actions.

111.3k1](/packages/friendsoftypo3-interest)

PHPackages © 2026

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