Skip to content

Feature request: embed IIIF viewer #209

@MonikaBarget

Description

@MonikaBarget

In the longer term, it would be good to be able to embed viewers for original digitised sources, especially when the narrative is mostly text-driven. Most early modern prints that I am working with are very large volumes, so it isn't an option to directly store the PDFs in Github, and external storage providers like Surf often block automated access even when you assign a document a public URL, so embedding them is difficult.

One solution can be to rely on IIIF, which is a standard that most archives use for image transmission on the web. The large Moser volume I am working with, for instance, is hosted by Digitale Sammlungen in Germany, who make use of IIIF and the Mirador viewer on their on website:

https://www.digitale-sammlungen.de/en/view/bsb11224455?page=,1

The work can be re-used and displayed free of charge for academic and educational purposes, which is why the collection also includes a so-called IIIF manifest: https://api.digitale-sammlungen.de/iiif/presentation/v2/bsb11224455/manifest

The manifest is what allows you to re-integrate the image content into other applications: https://iiif.io/guides/using_iiif_resources/

The Mirador viewer itself is also open source and quite popular in academic and heritage institutions, but it is overkill for StoryScript. A more simplified viewer is Universal Viewer.

They allow testing on their website, which gives me this for the Moser IIIF manifest:

Image

Test-embedding is officially possible via the following code structure, but when I tried in one of my HTML files in StoryScipt, I only got a black box with a spinning loading circles that never actually resolved:

<center><iframe src="https://universalviewer.io/uv.html?manifest=https://api.digitale-sammlungen.de/iiif/presentation/v2/bsb11224455/manifest" width="800" height="600" frameborder="0" allowfullscreen="allowfullscreen"></iframe></center>

Maybe we can explore this further at some point. I will now create a work-around, embedding some individual pages using iframe.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions