Skip to content

iiiris documentation

iiiris is an IIIF Image API 3.0 (and 2.x) compatible image server written in Go — a single static binary that serves tiled, region- and size-negotiated images, IIIF Presentation manifests, and an authorization flow, backed by pluggable sources and caches.

This site is the operator and API-consumer reference. For what iiiris is and a one-command quickstart, start with the Overview.

Where to start

A path for getting iiiris into production:

  1. Deployment — build it, run it, supervise it.
  2. Configuration — the YAML/env config surface and zero-config defaults.
  3. Sources — point it at your images (filesystem / HTTP / S3).
  4. Caches — tune the three cache slots (optional but recommended for real traffic).
  5. Admin UI — the /admin/ operator console.

Add authorization and identifier rewriting hooks when you need them.

Guides

  • Architecture — package map and request flow
  • Sources — filesystem, HTTP, S3 source backends
  • Caches — the three cache slots and four backends
  • Hooks — identifier resolution and the Hook interface
  • IIIF auth — Authorization Flow 2.0: services, patterns, backends, cache-tier keying
  • IIIF compliance — what's implemented per Image API 2.x and 3.0
  • Presentation — IIIF Presentation API 3.0 / 2.1
  • Content state — IIIF Content State API
  • MCP — the Model Context Protocol server surface
  • Admin UI — operator console under /admin/
  • Troubleshooting — symptoms → causes → fixes

Specifications

The specs are the post-implementation contracts for shipped subsystems — the "what does this guarantee" reference. Reach for them when a guide isn't precise enough, not as a starting point.

Reference