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
- Authentication
- Tutorials
- Videos and Slide Decks
- Discovery
- Annotations
- CMS Integration
- Newspapers
- STEM
- 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.
- 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).
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. 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
- 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
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.
- 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.
- 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.
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.
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.
- 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 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
- Image API Playground - Visual form-based way to explore the Image API parameters. Developed for a course at Georgia Tech by Jack Reed.
- IIIF Workshop - An online workshop that covers the basics of IIIF including the Image and Presentation API's
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.
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.
- Storiiies - Demos of using annotations for storytelling.
- 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.
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.
- UniversalViewer4Omeka - Omeka plugin that implements the IIIF APIs (Image and Presentation) and integrates the UniversalViewer into Omeka.
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.
Science, Technology, Engineering, Math/Medicine
- CellXplorer - Cell biology annotations in a deep zoom viewer.
- 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.
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.
- 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.
To the extent possible under law, all contributors waive all copyright and related neighboring rights to this work.