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.
- 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
- Videos and Slide Decks
- CMS Integration
- Experiments and Fun
- Digital Asset Management (DAMs)
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.
- API Annex Documents - List of all API annex documents and API implementation notes.
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).
Image Server Shims
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.
- Leaflet-IIIF lightweight, extensible IIIF image viewer.
- Mirador multi-up workspace. See also Awesome Mirador list.
- Diva.js IIIF image viewer optimized for speed and flexibility.
- IIIFViewer IIIF WebGL / Canvas / DOM mobile-ready fast viewer powered by OpenLayers V3
- Tify is a slim and fast IIIF document viewer built with Vue.js
- IIIF Curation Viewer - A general IIIF viewer with added focus on curation and ordering of cropped IIIF images. Demo
- CanvasPanel is a React library to build IIIF Presentation 3 level viewing experiences including support for annotations.
Image API Libraries
- iiif-apis - Java IIIF 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.
- iOSTiledViewer - IIIF image API and Zoomify viewer for iOS, written in Swift.
- image-iiif - A bring your own framework solution for implementing IIIF Image API 2.1 with PHP.
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.
- IIIF-imageManipulation - UCD's tool to crop images and manipulate via IIIF attributes; integrate with Mirador via plugin.
- Compariscope - A demo app by the Victoria & Albert useful for the alignment of overlayed images, served by the IIIF Image API, and providing an interactive viewer for overlayed images, presented fluidly, using responsive image tags.
- IIIF cropping tool - Website using Leaflet-IIIF Cropping and Jekyll that allow users to enter the URL of a IIIF image and get the URL for the cropped section of the image.
Presentation API Libraries
- 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-apis Java IIIF 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.
- Swiiift - IIIF presentation API library for Swift.
Presentation API Shims
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.
Presentation Manifest Tools
- 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.
- biiif - Organise your files according to a simple naming convention to generate IIIF v3 manifests.
- iiif-producer - A CLI tool that generates IIIF Presentation 2.1 Manifests from METS/MODS (produced by Kitodo)
- File Analyzer IIIF Manifest Generator from Existing Metadata . Georgetown's desktop application that will generate IIIF manifest files from existing metadata files.
Content Search API
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.
- Whiiif - Python/Flask/Solr application to index IIIF manifests alongside ALTO representations and provide a IIIF Content Search API endpoint.
Some resources about the IIIF Authentication API.
- IIIF Auth Demonstrator - Manifests with accompanying images that demonstrate various IIIF authentication modes.
- IIIF.io : the hardest part will be saying "no". - Blog post by Russell McOrmond considering the challenges of restricting access to Canadiana's resources.
- iiif-auth-server - A demo server implementation of all apsects of the IIIF Authentication specification.
- iiif-auth-client - Client implementation of the IIIF Authentication specification.
Tutorials for how to accomplish functionality in your applications.
- Image API Playground - Learn about the structure of a IIIF URL through manipulating the parameters and seeing the results in a live demo.
- IIIF Implementation Guide A step-by-step walkthrough of how to implement IIIF.
- 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.
- Getting started with IIIF Introduction originally presented during a workshop at the 2017 Code4Lib Conference at Los Angeles, CA
- IIIF Workshop - An online workshop that covers the basics of IIIF including the Image and Presentation API's
- Introduction to IIIF - A thorough introduction to the IIIF specifications and tools for using them, by Tom Crane at Digirati.
- Introduction to IIIF in Portuguese - Covers Image API, Presentation API, and annotations.
- Suggested measures for deploying IIIF in Swiss cultural heritage institutions (White paper) - by Julien A. Raemy & René Schneider (2019).
Videos and Slide Decks
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.
- An Introduction to the International Image Interoperability Framework - Presentation introducing IIIF for new audiences as "the API for humans" - also contains videos from other IIIF presentations.
- Introduction to IIIF Extensive presentation introducing IIIF with numerous examples and video demos, Beijing, October 2017.
- Introduction to IIIF (German) A German translation of the above presentation.
Links to help you discover IIIF resources that have been shared, demonstrations of IIIF discovery and useful discovery tools.
- iiif-universe - 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.
- IIIF Explorer OCLC's IIIF Explorer is a prototype application that searches across images (all IIIF-enabled) in the CONTENTdm digital content management systems hosted by OCLC.
- Europeana's IIIF filtered search Europeana provides a filter to identify all IIIF-enabled resources in its collections
- IIIF Discovery in Japan is a prototype discovery system for IIIF resources in Japan
- Biblissima IIIF-Collections is a prototype application that allows you to search across IIIF-compliant manuscripts and rare books dated before 1800.
Import to Viewers
- Open in IIIF Viewer - A web browser extension to open IIIF manifest link in your favorite IIIF viewer.
While annotations are not specified by IIIF they are an important enabling technology.
- Storiiies - Demos of using annotations for storytelling.
- In the Spotlight - Crowdsourced contributions are serialised according to the Web Annotations Data Model.
- Local IIIF Annotation Server - Jekyll front end, Flask backend, equipped with Vagrant Box that provides a Mirador viewer for creating and save annotations into Jekyll site. Annotations are sharable by using GitHub pages with Jekyll front end.
- 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.
- ipfs-iiif-db - IIIF annotations JS client over IPFS.
- annotot - Simple IIIF annotations mounted in a Ruby on Rails applications.
- IIIF Annotation Studio - Mirador Viewer packaged as a desktop app (macos, linux) with an embedded annotation endpoint that saves annotations to a local sqlite database.
Content Management Systems (CMS) modules that implement or leverage the IIIF APIs.
- IIIF Image Field - Drupal 7 module that provides an easy way to add IIIF Images to content types, and configure their display. Supports Image API versions 1.0 or 2.0.
- UniversalViewer Omeka S Module - Omeka S module that integrates UniversalViewer.
- IIIF Server Omeka S Module - Omeka S module that implements the IIIF Image and Presentation APIs.
- Mirador Viewer Omeka S Module - Omeka S module that integrates the Mirador image viewer.
- IIIF Toolkit - IIIF Toolkit by University of Toronto Libraries is a plugin for Omeka Classic (2.3+) that integrates Mirador with a built-in annotator, a manifest generator, Simple Pages shortcodes and Exhibit Builder blocks for a rich presentation experience.
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 - Friendly fork of chronam which is a webapp for viewing National Digital Newspaper Program data from the Library of Congress.
- docker-open-oni - 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 - Python program for turning National Digital Newspaper Program data into static IIIF JSON that is ready for mounting on the Web.
Science, Technology, Engineering, Math/Medicine
- CellXplorer - Cell biology annotations in a deep zoom viewer.
Experiments and Fun
- 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.
- Image Comparison with a Slider - Image comparison using leaflet slider by Digirati.
- Image Comparison with a Magnifying Glass - Image comparison using leaflet magnifying glass by Digirati.
- X-raying Balenciaga - Beautiful use of IIIF images to show X-rays of Balenciaga fashion by the Victoria & Albert Museum.
- Storiiies - Cogapp's showcase of recent experiments in digital storytelling using IIIF.
- Old Map Room - An AppleTV application that uses IIIF to turn any room into a map room.
- ANTLITZ.NINJA - Award-winning digital art app that cuts and re-combines historical portraits. Based on IIIF.
- cover.boutique - Award-winning web application to create designs for smartphone cases from IIIF resources.
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.
- Join IIIF Slack for the most up to date and broad discussions.
- Read quarterly IIIF Community Newsletters to stay up to date with the latest community activities.
- Submit a IIIF-related news item to the IIIF Community Newsletter.
- 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.
Digital Asset Management (DAMs) that support IIIF
To the extent possible under law, all contributors waive all copyright and related neighboring rights to this work.