Presented at Code4Lib 2015 in Portland, OR on February 10, 2015 by Eben English (eenglish [at] bpl.org, Boston Public Library)
Another day, another library reinventing the book-viewer wheel. When will the madness end? This talk will explore the current landscape of book-viewer/page-turner applications for digital library systems with an eye towards helping you make the right decision for your project. We'll look at some the major players on the market (such as Internet Archive BookReader, Wellcome Player, Mirador, and WDL-Viewer to name a few) and compare them based on a number of criteria: feature sets, mobile/tablet friendliness, ease of integration, code health, test coverage, "market share" (number of implementers), and other important factors. We'll look at the results of ACTUAL USABILITY TESTS to see what features users REALLY want in a book-viewer, and how each app measures up.
We'll also discuss important recent trends (such as the IIIF
Presentation API) that have the potential to shape the book-viewer development landscape in the immediate future. Which page-turner applications are best poised to adopt/integrate/leverage these emerging standards? Which will become obsolete? This talk has the answers you need.
8. INTERNET ARCHIVE
BOOKREADER
Strengths
•lots of examples to draw on
•supports keyword search
•embeddable (via <iframe>)
Drawbacks
•harder to work with images of varying sizes
•zoom not tile-based
•lacks: rotation, page # input, structural nav
10. WDLVIEWER
Strengths
•supports search (in a branch)
•tile-based zooming
•image rotation
Drawbacks
•search results display “linear”-only
•page # index display reflects image index rather than book pages
•lacks: structural nav
16. MIRADOR 2*
Strengths
•side-by-side comparison of multiple items
•annotation support
•structural navigation
Drawbacks
•no search support (yet)
•controls sometimes obscured by content
•lacks: keyboard shortcuts for page navigation
17. OTHER CRITERIA
(SEE APPENDIX)
• how actively maintained is it?
• code weight
• documentation
• mobile/tablet UX
• older browsers UX
• implementation process
• # of implementations
18. IIIF PRESENTATION API
http://iiif.io/api/presentation/2.0
• API to deliver structural and presentation info
• returns JSON-LD
• abstracting page sequence out of the data passed
to viewer functions
• allows for richer structural navigation
• easily share works between repositories
Source: http://iiif.io/api/presentation/2.0/img/objects.png
19. IIIF PRESENTATION API
ranked by level of compliance
• Mirador 2: fully compliant
• Internet Archive BookReader: IIIF-compliant fork
(https://github.com/aeschylus/IIIFBookReader)
• Diva.js: branch with work on Image and Presentation APIs
• Wellcome Player: Image API, but not Presentation API (yet)
• WDLViewer: no known activity?
20. USABILITY TESTING
• What features do users really want?
• What features are most useful?
• What features are lacking?
• Which book-reader do they like best?
21. USABILITY OBSERVATIONS
PRINT READING MODELS
DON’T ALWAYS TRANSLATE
“If I have to use the Table of Contents, it
means something’s not working right.”
Winners: Wellcome Player, Mirador 2
22. USABILITY OBSERVATIONS
USERS MOVE IN
MYSTERIOUS WAYS
•controls should be consistent no matter what view or mode
is being used
•reading and research functionality (cite, link, info, etc.) should
be integrated
Winners: Wellcome Player, Internet Archive
BookReader
23. USABILITY OBSERVATIONS
FUNCTION OVER FORM...
...but form is still important.
•maintaining the “book” feel adds to the users’ enjoyment of
the interface
Winners: WDL Viewer, Internet Archive BookReader
24. USABILITY OBSERVATIONS
USERS ARE IMPATIENT
• the app needs to be fast
• any image loading should be clearly communicated
Winners: Diva.js, WDL Viewer
25. USABILITY OBSERVATIONS
MOSTVALUABLE FEATURES
•keyword searching
•structural navigation
•page # input
•in-reading research functions (download, link, info, etc.)
Winners: Wellcome Player, Internet Archive
BookReader
27. SO WHICH ONE SHOULD I USE?
• content types are important
• IIIF API support
• mobile/tablet usage will continue to increase
• care and feeding of the code
30. APPENDIX
ACTIVELY MAINTAINED
ranked by # of commits in the last 12 months
1. Diva.js
2. Mirador 2*
3. Wellcome Player
4. Internet Archive BookReader
5. WDL Viewer
31. APPENDIX
CODE WEIGHT
ranked (lightest to heaviest) by total KB of JS + CSS + images (uncompressed)
1. WDL Viewer
2. Diva.js
3. Internet Archive BookReader
4. Mirador 2*
5. Wellcome Player