Skip to content

discoverygarden/iiif_presentation_api

Repository files navigation

IIIF Presentation API

Introduction

Provides serialization to IIIF Presentation API.

Requirements

This module requires the following modules/libraries:

  • Serialization (part of Drupal core)

Installation

Install as usual, see this for further information.

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.

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

Variable Description
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(). 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

Having problems or solved one? contact discoverygarden.

Maintainers/Sponsors

Current maintainers:

Sponsor:

Development

If you would like to contribute to this module create an issue, pull request and or contact discoverygarden.

License

GPLv3