PHPackages                             discoverygarden/iiif\_presentation\_api - 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. discoverygarden/iiif\_presentation\_api

ActiveDrupal-module[API Development](/categories/api)

discoverygarden/iiif\_presentation\_api
=======================================

Generates IIIF Presentation API manifests for Drupal entities.

v2.7.2(1mo ago)163911GPL-3.0-onlyPHP

Since Sep 27Pushed 1mo ago5 watchersCompare

[ Source](https://github.com/discoverygarden/iiif_presentation_api)[ Packagist](https://packagist.org/packages/discoverygarden/iiif_presentation_api)[ RSS](/packages/discoverygarden-iiif-presentation-api/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (14)Used By (1)

IIIF Presentation API
=====================

[](#iiif-presentation-api)

Introduction
------------

[](#introduction)

Provides serialization to IIIF Presentation API.

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

[](#requirements)

This module requires the following modules/libraries:

- Serialization (part of Drupal core)

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

[](#installation)

Install as usual, see [this](https://www.drupal.org/docs/extending-drupal/installing-modules) for further information.

Configuration
-------------

[](#configuration)

Out of the box the module provides minimal implementation and expects other modules to either decorate or provide their own implementation by extending the provided normalizers.

For any content entity that should be exposed the format will need to be configured as [documented by Drupal](https://www.drupal.org/docs/drupal-apis/restful-web-services-api/restful-web-services-api-overview#s-api-features%5D).

There are some environment variables to help integrate with IIIF Image APIs, in particular:

VariableDescription`IIIF_IMAGE_V1_SLUG`Slug to a IIIF v1 endpoint, containing `{identifier}`, which will be replaced with an identifier.`IIIF_IMAGE_V2_SLUG`Slug to a IIIF v2 endpoint, containing `{identifier}`, which will be replaced with an identifier.`IIIF_IMAGE_V3_SLUG`Slug to a IIIF v3 endpoint, containing `{identifier}`, which will be replaced with an identifier.`IIIF_IMAGE_ID_PLUGIN`The ID of a plugin to use to transform IDs.Presently, we indicate `level2` compliance for each IIIF Image API endpoint.

As a point of convenience, it is possible to specify the `IIIF_IMAGE_V*_SLUG`values using `base:`, as used by [Drupal's `Url::fromUri()`](https://api.drupal.org/api/drupal/core%21lib%21Drupal%21Core%21Url.php/function/Url%3A%3AfromUri/10). For example, if you are using a proxy to make a `/iiif/2` path for a IIIF-I v2 endpoint, such that your slug would be `https://{your hostname}/iiif/2/{identifier}`, then you can instead use `base:/iiif/2/{identifier}` to configure the reference more explicitly relative to the hostname used to access the site.

Troubleshooting/Issues
----------------------

[](#troubleshootingissues)

Having problems or solved one? contact [discoverygarden](http://support.discoverygarden.ca).

Maintainers/Sponsors
--------------------

[](#maintainerssponsors)

Current maintainers:

- [discoverygarden](http://www.discoverygarden.ca)

Sponsor:

- [CTDA: Connecticut Digital Archive](https://lib.uconn.edu/find/connecticut-digital-archive/)

Development
-----------

[](#development)

If you would like to contribute to this module create an issue, pull request and or contact [discoverygarden](http://support.discoverygarden.ca).

License
-------

[](#license)

[GPLv3](http://www.gnu.org/licenses/gpl-3.0.txt)

###  Health Score

47

—

FairBetter than 93% of packages

Maintenance95

Actively maintained with recent releases

Popularity17

Limited adoption so far

Community21

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 54.8% 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 ~82 days

Recently: every ~185 days

Total

12

Last Release

52d ago

Major Versions

v1.0.1 → v2.0.02023-11-09

### Community

Maintainers

![](https://www.gravatar.com/avatar/ed79bbc35ed0aaee2f603c6f16885fb01e203941eea0cd63013f9f6185df6c30?d=identicon)[adam-vessey](/maintainers/adam-vessey)

![](https://www.gravatar.com/avatar/49d799e416ff30e90b07d1b7b6a487dfe945ae884c53747de4724439965d7904?d=identicon)[lutaylor](/maintainers/lutaylor)

![](https://www.gravatar.com/avatar/454136e389341c2a9c22dfba3107e09e2f8653807185bb213c5272efa9b93864?d=identicon)[willtp87](/maintainers/willtp87)

---

Top Contributors

[![adam-vessey](https://avatars.githubusercontent.com/u/607975?v=4)](https://github.com/adam-vessey "adam-vessey (34 commits)")[![nchiasson-dgi](https://avatars.githubusercontent.com/u/53783039?v=4)](https://github.com/nchiasson-dgi "nchiasson-dgi (14 commits)")[![jordandukart](https://avatars.githubusercontent.com/u/1337738?v=4)](https://github.com/jordandukart "jordandukart (11 commits)")[![willtp87](https://avatars.githubusercontent.com/u/688918?v=4)](https://github.com/willtp87 "willtp87 (3 commits)")

---

Tags

apidrupaldrupal-moduleprototype

### Embed Badge

![Health badge](/badges/discoverygarden-iiif-presentation-api/health.svg)

```
[![Health](https://phpackages.com/badges/discoverygarden-iiif-presentation-api/health.svg)](https://phpackages.com/packages/discoverygarden-iiif-presentation-api)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M475](/packages/stripe-stripe-php)[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M270](/packages/twilio-sdk)[knplabs/github-api

GitHub API v3 client

2.2k15.8M186](/packages/knplabs-github-api)[facebook/php-business-sdk

PHP SDK for Facebook Business

90121.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

73813.7M114](/packages/meilisearch-meilisearch-php)[google/gax

Google API Core for PHP

263103.1M452](/packages/google-gax)

PHPackages © 2026

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