nui-galway-viewer

Initial behaviours test

See http://resources.digirati.com/nuig/viewer.html. This release tests the modelling approach outlined in implementation.md. It is most definitely not production ready code, or visual design.

Timeline UI

The timeline navigation is presented in two ways for experimentation. The default view shows the position within the work, so there is a direct relationship between the ranges and the canvases they cover. You can click the position indicator (which could be a slider or some other sort of interactive bar, here represented by alternating blocks), or the ranges themselves. Position within the work can be indicated down to the page level (i.e., current canvas). As you navigate through the work, the current canvas and current range are both highlighted. This is a “timeline”, but distorted to align ranges with their pages in the document.

The UI can be enhanced with information about the date ranges covered, and/or page numbers.

Clicking Timeline proportional removes the canvas bar, and scales the ranges according to their temporal coverage. Navigation based on canvases won’t work here, so we can’t show the canvas position indicator. As you navigate through the work, the current range is highlighted.

The UI can be enhanced with date information, such as a decade scale. The timeline is generated by finding the earliest and latest dates across the ranges, then scaling everything to fit. With this approach, it’s possible that a sequential paging through the document could result in the range position jumping back, if the ranges don’t follow on from each other sequentially in their temporal coverage. For example, a later chapter of reminiscences of childhood might appear towards the end of the canvas-proportional scale, but at the beginning of the temporal coverage scale.

Main window

This is a static image rather than deep zoom (we can use Openseadragon here). Simple paging controls are offered. When the viewer encounters a page with links (as described in implementation.md#model—linking) it doesn’t yet draw the target box on the image, it just displays the information it knows about the link. Page 19 has a link to the letter about Cricket, and page 3 has a sample link to a particular canvas in a multiple-canvas manifest (not Galway content for now). Clicking the rendered link opens up the supplemental material. If the linked target is a canvas in a multiple canvas sequence, the

Supplemental panel

This implementation does not load the target manifest until the link is clicked, but it does need to load the main canvas’s annotation list to find the links. Deferring the target manifest load until the user clicks a link gives a better user experience, we will need to consider the experience when the target (supplemental) manifest is very large (which is probably not the case for the current material).

Next steps

This first release demonstrates that the model supports the required functionality, but raises questions about interface and user interactions. The next step is to consider those questions of user experience. The current implementation can be used for testing, though requires a modern browser.

Once the UX approach is decided, we can make a production-ready version of the code, tested in more devices.

For discussion

(to be raised as issues where approriate)