aeschylus / IIIFBookReader

A plugin for the Internet Archive BookReader that enables easy book viewing on top of a IIIF-compatible back end.
http://aeschylus.github.io/IIIFBookReader/
22 stars 5 forks source link

Examples and Demo Not working on Readme.md #1

Open sdellis opened 9 years ago

sdellis commented 9 years ago

There are some folks who would like to contribute to this project from at least three different institutions (Princeton, Rutgers, and University of Graz in Austria). Can you offer anything about the state of your repository and whether it is worth using as a starting point? Some folks have added gesture support and will be updating the BookReader to the latest version of jQuery.

aeschylus commented 9 years ago

Hi @sdellis. Thank you for your interest in the project. I would heartily welcome and facilitate any contributions from these institutions. I created this wrapper with their needs in mind, so I hope it will be able to be useful. I would say it's worth using as a starting point. Can you tell me more about your applications?

I have updated the README to not have dead links. There seems to have been a change to the target url in the example, so I've updated that as well. Please let me know if the problem persists.

You may also be interested in the work that's been going on at iiif.io. In particular, the rewrite of Mirador (at IIIF/m2) provides a robust book-viewing mode with deep zoom capabilities. This demo shows an object from a IIIF manifest served from Harvard, being displayed on a Mirador (tentative 2.0) session created on a Stanford Server in book-viewing mode. Mirador 2.0 also supports tables of contents, but they are turned off in that example to show the similarity to the IA Book Reader. Here is a more fully-featured demo.

sdellis commented 9 years ago

Thanks for the update and for the link fixes and examples. The Mirador (M2) stuff is quite impressive! That would certainly support many of our anticipated use cases, particularly those involving researchers who need to collaborate, annotate, and compare images and texts among works housed in different repositories.

However, we have another use case, and that is simply a "reader" for those who want to read texts as they might on a Kindle, tablet, or other mobile device. This generally wouldn't involve a lot of deep zooming, but would need highly optimized delivery of assets over mobile and wireless networks. I could also see the need to deliver born-digital (non-image-based) texts, as well as more responsive layouts for smaller screens. At the moment, the Mirador 2.0 would need some work in that area, and I wonder if it's an ultimate goal of that project?

After seeing the example and looking at your code, this does look like a great start. In fact, it may be enough as-is for some of the other institutions. However, it seems like some of the optimizations I mentioned have more to do with the BookReader itself than with your wrapper. I also imagine that support for other Presentation API Resource Types (Ranges, Canvas, etc.) would require BookReader refactoring. Anyway, I will let the other institutions know about this and perhaps we can start outlining some features/use cases.

cmmills commented 9 years ago

We currently use the BookReader modestly, but are moving more resources to that presentation platform daily.

I have been planning on refactoring the BookReader this Fall/Winter to improve support/compatibility with our repository code base. The items I was looking at working on were improved gesture support, latest jQuery library compatibility, and IIIF 2.0 support.

I haven't looked around to see if one or many of these items have already been addressed, or are being addressed, but I am not looking to reinvent the wheel if someone already has. That being said I would take part in integrating, orchestrating, developing any of these pieces or other items I haven't thought of as well.

datazuul commented 9 years ago

I would like to see a working example. I cloned repo and now try to find working IIIF-URLs to be configured in the example's main.js:

The current example is not working:

br.IIIF({
    url: 'http://dms-data.stanford.edu/data/manifests/Walters/qm670kv1873/manifest.json',
    sequenceId : 'http://dms-data.stanford.edu/data/manifests/Walters/qm670kv1873/normal',
    maxWidth: 800
});

After looking into directory http://dms-data.stanford.edu/data/manifests/Walters/qm670kv1873/ I saw that in February the manifest was changed. Maybe this is the cause of breaking the example...

Could you please provide a working URL (or fix the example to serve the new manifest)? What IIIF versions are supported (regarding manifest.json and sequenceId...): Version 2.0 of presentation API (http://iiif.io/api/presentation/2.0/index.html#manifest) or version 1.1 (http://iiif.io/api/metadata/1.0/index.html#api-manifest)?

datazuul commented 9 years ago

Further investigation shows, that image-URLs not working: "service": { "@id": "https://stacks.stanford.edu/image/iiif/qm670kv1873%252FW168_000009_300",

When I call this URL in browser I get

#<NoMethodError: undefined method `stanford_only_rights_for_file' for nil:NilClass>

Or am I doing something wrong (I open the example's index.html locally from my harddisk in Firefox...)

aeschylus commented 9 years ago

Nope, you're not doing anything wrong. It seems it's just a dead link. I'll update this to a working (and hopefully permanent) IIIF endpoint for testing.