A list of lists of awesome IIIF resources.
The International Image Interoperability Framework (IIIF) is a group of standard APIs around sharing and reuse of media. It is also a growing community of galleries, libraries, archives, museums, companies, and others who develop the standards and interoperable software implementations. Content includes helpful links around each of the standards, demonstrations of their use, and tutorials and presentations. The list is especially helpful for orienting new community members and developers.
Disclaimer: This list is created for informational purposes only and any links do not constitute an endorsement, recommendation, or favoring by the IIIF Consortium.
- Standards
- Image Servers
- Image Server Shims
- Image Viewers
- Image API Libraries
- Image Tools
- Presentation API Libraries
- Presentation API Shims
- Presentation Manifest Tools
- Content Search API Servers
- Tutorials
- Presentations and Slide Decks
- Discovery
- Annotations
- Implementations
- Newspapers
- Writing
- Experiments and Fun
- Community
The IIIF community has developed several standards for interoperable web-based image delivery.
- Image API - specifies a web service that returns an image in response to a standard HTTP or HTTPS request.
- Presentation API - provides the information necessary to allow a rich, online viewing environment for primarily image-based objects to be presented to a human user, likely in conjunction with the IIIF Image API.
- Content Search API - specifies interoperability mechanism for searching within annotations.
- Authentication API - describes a set of workflows for guiding the user through an existing access control system.
- External Services API Annex - describes the set of related services that have been identified as useful to reference from the IIIF APIs.
These servers support the IIIF Image API. Some may also have support for the Presentation API.
- Loris written in Python.
- IIPImage Server high performance image server.
- riiif written in Ruby as a Rails engine.
- SIPI IIIFv2 image server written in C++.
- RAIS 100% open source tile server for JP2 images written in Go.
- digilib image server written in Java.
- Cantaloupe image server written in Java.
- iiif_s3 Ruby library for generating a static IIIF level 0 Image and Presentation API server on Amazon S3.
- Hymir IIIF Server IIIF server written in Java supporting IIIF Image and Presentation API.
- go-iiif IIIF server written in go (fork of greut/iiif).
These shims allow you to use an image server that does not currently support IIIF. If you have not implemented an image server yet, this is probably not where you want to start.
- Djatoka Ruby gem convert IIIF URLs into the URLs that Djatoka requires.
- Shimmy is a Ruby gem designed to help you build shims for the IIIF Presentation API.
- ContentDM Image translator makes ContentDM images available through IIIF. Python.
- Flask-IIIF Flask extension to support IIIF in Python/Flask applications. See Flask-IIIF previewer demo and Flask-IIIF RESTful demo.
- Universal Viewer is a rich embeddable interface.
- OpenSeadragon has IIIF tile support.
- Scalebar Plugin OpenSeadragon plugin for physical scale overlay.
- Imaging Helper Plugin OpenSeadragon plugin with utility functions.
- Leaflet-IIIF lightweight, extensible IIIF image viewer.
- Mirador multi-up workspace.
- Diva.js IIIF image viewer optimized for speed and flexibility.
- iiif-image-api Java IIIF Image API libraries.
- piffle Python library for generating and parsing IIIF Image API URLs.
- iiif_url Ruby library for creating and parsing IIIF Image API URLs.
- iiif Python library providing a reference implementation of the Image API. Also includes a test server and static tile generator.
Various tools for working with images such as cropping tools.
- Leaflet-IIIF Cropping - Example of using Leaflet to provide IIIF cropping.
- Stanford Cropper - Simple image cropper.
- OpenSeadragon Cropping Tool - Script to allow for cropping an image from within OpenSeadragon.
- Wikimedia Commons Image Cropper - Create IIIF image regions from image files at Wikimedia Commons.
- TryIIIF - Example tool for viewing any web-accessible image within a couple IIIF Image Viewers.
- Manifesto IIIF Presentation API client and server utility library.
- Manifold Wraps Manifesto to provide viewer state and related utilities.
- O'Sullivan Ruby API for creating IIIF manifests.
- iiif-prezi Python library providing a reference implementation.
- iiif-presentation-api Java IIIF Presentation API libraries.
- IIIF Manifest Generator PHP library for generating IIIF manifests.
- tabula-rasa npm module for creating and manipulating IIIF manifests.
- iiif-tree-component IIIF tree menu sortable by date with multi-select capability.
- Tripoli IIIF Presentation API 2.0+ validation library.
- ViewDir documentation on IIIF-related libraries and components, from an open community of designers and developers interested in creating composable and interoperable interfaces for consuming and creating online content.
These shims allow you to use systems with presentation metadata (e.g. structure or sequences) that do not currently support IIIF. If you have not implemented the Presentation API yet, this is probably not where you want to start.
- Shimmy is a Ruby gem designed to help you build shims for the IIIF Presentation API, and has samples for NYPL, Flickr, and the US National Archives.
- Chronicling America for newspapers digitized in the National Digital Newspaper Program.
- Manifest Editor - Web application for importing, viewing, updating, and exporting manifests. See a demo.
- demetsiiify - Web service for creating IIIF manifests from METS/MODS documents.
Libraries and applications that support the Content Search API.
- Ocracoke - Rails application to create, index, and search text from page images and provide results in IIIF Content Search API format.
Tutorials for how to accomplish functionality in your applications.
- IIIF Image API live demo Learn about the structure of a IIIF URL through manipulating the parameters and seeing the results in a live demo.
- IIIF Quick Start Guide is a quick overview of how you might get started with implementing various IIIF standards.
- Drag and Drop a IIIF image into Mirador.
- Fellow Travelers: The Canterbury Tales and IIIF by Benjamin Albritton includes an explanation of the use case for medieval scholars using Chaucer as an example and short section on how to make a page comparison demo in Mirador.
- IIIF Intro (fr) Introduction to IIIF (in French).
- Introduction to APIs using IIIF uses IIIF as an example to explain APIs.
- Image Choice video demonstration of how a canvas can have a choice of images and a viewer can toggle between them.
Slide decks and presentation videos with a focus on IIIF.
- Image API Introduction a high level overview of the Image API parameters.
- OA - Shared Canvas - TEI - Biblissima project part of a workshop on TEI and neighboring standards including IIIF.
- IIIF For Small Projects how IIIF can be used on small projects with limited infrastructure, presented at KeystoneDH 2016.
- Introduction to the Presentation API by Rob Sanderson.
- Video from IIIF event at the National Gallery of Art in May 2015.
- Video from the outreach event at the Museum of Modern Art in May 2016.
- Collection of slide decks from various IIIF events.
Links to help you discover IIIF resources that have been shared, demonstrations of IIIF discovery and useful discovery tools.
- iiif-universe is a repository that includes links to known IIIF presentation manifest collections.
- iNQUIRE demo is a demo of an open-source IIIF-compliant research and discovery platform. This is the IIIF-compliant version of the platform driving [Digital Bodleian] (http://digital.bodleian.ox.ac.uk/).
- iNQUIRE source is the Github repository for iNQUIRE.
- Musiclibs provides cross-library search of thousands of musical scores and manuscripts.
While annotations are not specified by IIIF they are an important enabling technology. This section currently contains a list of annotation servers.
- MangoServer - Mongo-backed annotation server written in Python.
- SimpleAnnotationServer - Java annotation server backed by an Apache Jena triple store, Sesame, or Solr.
- Elucidate - Java and Postgres annotation server.
Sites which have implemented IIIF in some respect. Note what standards or other libraries are implemented.
- Historical State Search displays images via a IIIF image server.
- FromThePage ingests IIIF manifests and displays images for transcription using OpenSeaDragon.
- SAT Taishōzō Image DB by the SAT Daizōkyō Text Database Committee in the DH initiative, the University of Tokyo adopts the IIIF Image and Presentation APIs including over 4,000 annotations displayed on Mirador.
- e-codices provides access to 1,500 Swiss medieval manuscripts (ca. 500,000 high-res images) via IIIF. The IIIF manifest link for individual manuscripts can be found on the overview page of each manuscript (see example). IIIF collection of collections with links to all manifests here: http://www.e-codices.unifr.ch/metadata/iiif/collection.json.
- Gallica is the digital library of the Bibliothèque nationale de France (BnF), providing access to millions of documents (newspapers and journals, maps, printed books, manuscripts, scores etc.). It implements the Image API and the Presentation API. More technical details about the IIIF endpoints (images and manifests).
- Biblissima reconstituted manuscript demo presents a manuscript where illuminations had been cut out and then allows for reconstituting the manuscript by placing those images back into place.
- iiif-server-demo Self-contained IIIF Demo server written in Java.
- NCSU Libraries Rare and Unique Digital Collections implements the Image, Presentation, and Content Search APIs.
- DigiVatLib provides access to digitized collections from the Vatican.
- Georeferencer can take maps accessible via IIIF and referenced to modern maps.
- hocrviewer can display and search OCRed documents in the hOCR format with Mirador. Contains a simple implementation of the Content Search API with SQLite.
- LUNA Imaging digital collections software supports the Presentation API in LUNA 7.2.5. See more details about LUNA and IIIF and demo of LUNA with IIIF in action.
These are resources that are specifically useful for working with newspapers. Many of them are outputs of the IIIF Newspaper Community Group.
- IIIF Newspapers Google Drive Folder has working documents of the Interest Group for meeting minutes, and working drafts of best practices, etc.
- Welsh Newspapers Online provides access to over 1 million newspaper pages using the IIIF Image API.
- National Library of Wales' guide to IIIF Newspapers provides an explanation and examples of how IIIF applies to newspapers.
- Populating the Annotation Store with IIIF Annotation List which provides instructions on how to edit OCR text using annotations in Mirador.
- open-oni is a friendly fork of chronam which is a webapp for viewing National Digital Newspaper Program data from the Library of Congress.
- docker-open-oni is a Docker friendly setup for open-oni, which will set up and configure the Web application as well as the MySQL, Solr and RAIS Image Server.
- ndnp_iiif is a Python program for turning National Digital Newspaper Program data into static IIIF JSON that is ready for mounting on the Web.
Blog posts, press releases, and other writing about IIIF.
- Zoom in to 9.3 Million Internet Archive Books and Images - through IIIF blog on the Internet Archive's adoption of IIIF.
- IIIF support for the Qatar Digital Library.
- Comprendre IIIF et l’interopérabilité des bibliothèques numériques blog post giving an overview of IIIF, in French.
- Rounding strategies used in IIIF blog post varying calculations of aspect ratios across IIIF clients and servers.
- Europeana aligns with the International Image Interoperability Framework announcing Europeana's interest in IIIF, and an update on progress.
- There's a new viewer for digitised items in the British Library's collections announcement on implementation of the Universal Viewer.
- The International Image Interoperability Framework (IIIF): A community & technology approach for web-based images paper published for the 2015 Archiving Conference in Los Angeles, CA
- An Introduction to the International Image Interoperability Framework
- Puzzles! Powered by IIIF - Drag-and-drop image tile puzzles created by Michael Appleby, Yale Center for British Art.
- Slider puzzles - More drag-and-drop puzzles, created by Ben Albritton, Stanford University Libraries.
- David Rumsey MapTab - A IIIF powered, Chrome extension that displays a random map from the David Rumsey Map Collection everytime you open a new tab in your browser. Built using Leaflet-IIIF and React.js. Created by Jack Reed, Stanford Univerity Libraries.
- Fractals - Deep zoom into a huge (1bn x 1bn pixel) fractal image, created by Sean Martin, Applied IIF. Also see full list of fractals.
- The Transcriptinator - A prototype "game" created for use on the British Library's crowd-sourcing arcade machine. Players have to flag up errors in the OCR transcriptions of content taken from the Qatar Digital Library. Created by Jon White and Tristan Roddis, Cogapp.
- IIIF Gallery - A virtual art gallery using OpenSeadragon and custom image generation, created by Stephen Fraser, Digirati. Also see full source code.
- Exquisite Corpse - A prototype that deliberately mixes up portrait paintings. Created using Node.js by Jeff Steward, Harvard Art Museums.
- 3D trade cards explorer - A 3D environment that displays nineteenth-century trade cards from the Boston Public Library. Designed to be viewed on a mobile phone, ideally with Google Cardboard. Created using three.js by Jon White, Cogapp.
- Sleep Stories - an experiment with the W3C Web Annotation Data Model. The annotations present a sequence of stories associated with a large image. Optimised for mobile. Created by Andrew Dyton and Stephen Fraser, Digirati, for Wellcome Collection.
IIIF is a community-based initiative that relies on active participation, discussion, and input. To get involved and learn more, see the IIIF Community page.
- Join the IIIF-Discuss email list.
- Contribute to one of the IIIF community and/or technical groups.
- Participate in the bi-weekly IIIF community calls. See the IIIF community calendar for details.
- Learn more about the IIIF Consortium.
- Attend a IIIF event.
- iiif_io on Twitter.
To the extent possible under law, all contributors waive all copyright and related neighboring rights to this work.