Skip to content
An open-source, web-based 'multi-up' viewer that supports zoom-pan-rotate functionality, ability to display/compare simple images, and images with annotations.
JavaScript HTML
Branch: master
Clone or download


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Add separate issue templates for Mirador 2 and Mirador 3 May 30, 2019
__mocks__ enable css to be directly imported/mocked into components for unit te… Jan 25, 2019
__tests__ Use chars instead of values for OpenAnnotation May 22, 2020
config closes #76 Dec 10, 2018
scripts Remove json server from test and development harness Apr 21, 2020
src Use chars instead of values for OpenAnnotation May 22, 2020
.eslintignore adds test coverage to jest config Dec 13, 2018
.eslintrc Use IIIF thumbnails when provided May 19, 2020
.gitignore moves json-server configuration to scripts directory Jan 17, 2019
.travis.yml pins travis node version to lts Apr 26, 2019 Update Jan 15, 2019
LICENSE Update license year Apr 17, 2020 Add info for help w/ translations fixes #2806 Jun 27, 2019
babel.config.js deploy es and cjs modules. closes #2929 Jan 23, 2020
bundlewatch.config.json Bump up the bundlewatch size Apr 20, 2020
jest-puppeteer.config.js Remove json server from test and development harness Apr 21, 2020
jest.json Update to use Manifesto v4.0.1 with some new APIs Mar 11, 2020
netlify.toml Add a configuration file for Netlify to redirect to our integration t… Jan 16, 2019
package.json Bump to v3.0.0-beta.10 May 21, 2020
setupJest.js Merge pull request #2955 from ProjectMirador/svg-annos Mar 13, 2020
webpack.config.js Limit chunking to development only, so that built umd package will co… Apr 7, 2020

NOTE: This README reflects the in development version of Mirador 3. For previous versions, please reference that release's README directly. Latest 2.x release: v.2.7.0


Build Status codecov

For Mirador Users

You can quickly use and configure Mirador by remixing the mirador-start Glitch.

Adding translations to Mirador

For help with adding a translation, see src/locales/

Running Mirador locally

Mirador local development requires nodejs to be installed.

  1. Run npm install to install the dependencies.

Starting the project

$ npm start

Then navigate to

Instantiating Mirador

var miradorInstance = Mirador.viewer({
  id: 'mirador' // id selector where Mirador should be instantiated

> miradorInstance
{ actions, store }

Example Action

Add a window:


To focus a window run:


Check current state


Running the tests

$ npm test # For headless CI=true npm test

or to continually watch the source files

$ npm run test:watch

Linting the project

$ npm run lint


Useful browser extensions for debugging/development purposes

You can’t perform that action at this time.