readium / readium-test-files

Some ePub3 files used to demonstrate the capabilities of the Readium SDK and derived reading systems.
6 stars 5 forks source link

Should host the sample files via OPDS #9

Open rkwright opened 6 years ago

rkwright commented 6 years ago

Ideally, we should be hosting the sample files via OPDS is we can work out the details. One concern is that is means that all RS which want to use the site MUST implement OPDS. This may not be a deal-breaker, but it is a concern.

rkwright commented 6 years ago

mobile apps that support OPDS as a publications discovery / delivery mechanism would get a listing of available IDPF testsuite EPUBs in their packed/zipped form ('application/epub+zip' acquisition links). This would save users having to browse a website, download publications, and import them one-by-one in the app's bookshelf.

danielweck commented 6 years ago

Above and below excerpts from this email discussion thread (readium-dev Google Group): https://groups.google.com/forum/#!topic/readium-dev/rAzbKu2Jmtk

danielweck commented 6 years ago

3) Although the official EPUB-Testsuite does not provide an OPDS feed, this is a convenient feature that Readium implemented [5] so that the cloud/web reader can include the IDPF publications catalog in its library view. I would suggest to create an OPDS feed for your modified test files, Ric (ideally, each OPDS entry would point to the exploded / unzipped publications, using Readium's made-up link@type="application/epub" attribute value, instead of "application/epub+zip"). Note that there is a NodeJS utility script [6] that automatically generates an OPDS feed from a folder listing at GitHub (including useful metadata extracted from the EPUB OPF package, such as title and cover image). This script was used to create the IDPF samples listing as well [7]. Here is an example that would work if your FXL test publications were exploded instead of zipped (command line):

cd ./readium-shared-js/readium-build-tools/ node genOPDS.js feed.opds readium readium-test-files master /functional/Revised-TS-FXL cat feed.opds

[5] https://github.com/readium/readium-js-viewer/blob/develop/epub_content/epub_testsuite.opds

[6] https://github.com/readium/readium-shared-js/blob/develop/readium-build-tools/genOPDS.js

[7] https://github.com/readium/readium-js-viewer/blob/develop/epub_content/idpf_samples.opds

danielweck commented 6 years ago

just for your information: the DAISY accessibility tests are "published" via a single GitHub repository [1], using separate "build" and "content" folders to store packed/zipped EPUBs and their raw resources, respectively.

Ric, I see you decided to use the same folder organisation [2], which is nice :) Thanks!

I noticed that the IDPF EPUB sample publications are published raw in their GitHub source tree [3], and hosted as packed/zipped EPUBs via GitHub's release service [4] in the same repository. The IDPF testsuite uses a combination of GitHub repository [5] and third-party static hosting [6].

[1] https://github.com/daisy/epub-accessibility-tests

[2] https://github.com/readium/readium-test-files/tree/master/functional/Revised-TS-FXL

[3] https://github.com/IDPF/epub3-samples/tree/master/30

[4] https://github.com/IDPF/epub3-samples/releases

[5] https://github.com/IDPF/epub-testsuite/tree/master/content/30

[6] http://epubtest.org/testsuite/