GithubHelp home page GithubHelp logo

sourcefilter / iiif Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kirschbombe/iiif-workshop-diit

0.0 2.0 0.0 6.77 MB

Home Page: http://dawnchildress.com/iiif/

HTML 0.12% JavaScript 68.86% CSS 31.02%

iiif's Introduction

IIIF Workshop @ UCLA

Slides: https://docs.google.com/presentation/d/1llgoeecPdZQYJ7tANiyVqxvTmQ3XEaZt5-QV5BoY_Y0

NOTE: The iiif folder that appears in the GUI exists in the CLI at ~/workspace.

NOTE: Many of the URLs in this document are broken, and require replacing kirschbombe with the appropriate username for your user. If you see a page that says:

No workspace is bound to this domain.

then you may have forgotten to do this replacement.

To do this replacement automatically for all such URLs, run the following command in a terminal, using your username instead of kirschbombe:

sed -i -e 's/kirschbombe/kirschbombe/' ~/workspace/README.md 

test

I. Getting Started

In order to get started using this workspace:

  1. Start the Cantaloupe IIIF image server
  2. Start the static HTTP server (which will host your IIIF manifests as well as demo websites of various IIIF software)

Starting the servers

Choose one of the following methods:

Method 1: run configurations

From the top menu:

  1. Click Run > Run Configurations > Cantaloupe
  2. Click Run > Run Configurations > static HTTP server

With this method, logging output from the servers may be invisible. Sometimes it is and sometimes it isn't, we're not sure why.

Method 2: shell scripts

Use this method if you run into issues with Method 1.

  1. Open two terminals in the bottom pane of the IDE

  2. In one window, run

    cd ~/workspace
    ./start_cantaloupe.sh
  3. In the other, run

    cd ~/workspace
    ./start_static_http_server.sh

To verify that the servers are running:

  1. Visit the Cantaloupe admin interface at http://iiif-kirschbombe.c9users.io/admin. You should be greeted by a login prompt upon first visit (the instructors will provide credentials).
  2. Visit the static HTTP server welcome page at http://iiif-kirschbombe.c9users.io:8082. You should see IIIF Workshop @ UCLA.

Stopping the servers

If you need to stop either of the servers:

  1. Select the window in the bottom panel where the server you want to stop is running
  2. Press the "Stop" button (run configurations), or press Ctrl-C (shell scripts)

II. Experiments

Here you'll find information for using this IDE to experiment with:

  • a IIIF image server (Cantaloupe)
  • IIIF Image API clients (OpenSeadragon and Leaflet-IIIF)
  • manifests
  • IIIF Presentation API clients (Mirador and Universal Viewer)
  • tools for automating manifest generation (biiif and osullivan)

1. Cantaloupe

Cantaloupe is one of many IIIF-compatible image servers.

Adding images

Put images in cantaloupe_images to make them available via Cantaloupe.

Requesting images and image information

The base URL of the server is http://iiif-kirschbombe.c9users.io/iiif/2/ (visit that URL for more info).

Example requests:

2. OpenSeadragon (OSD) and Leaflet-IIIF

OpenSeadragon and Leaflet-IIIF are two examples of Image API clients.

You can access instances of them running on your static HTTP server:

To choose new images to display in them, edit openseadragon.html and leaflet.js.

3. Manifests

Put manifests in iiif_manifests to make them available via the static HTTP server.

To see a list of all your manifests, visit: http://iiif-kirschbombe.c9users.io:8082/manifests

HINT: When viewing manifests, it helps if your browser has a nice JSON viewer. Firefox works great out of the box, and several other browsers have add-ons for this purpose.

4. Mirador and Universal Viewer (UV)

Mirador and Universal Viewer are two examples of Presentation API clients.

You can access instances of them running on your static HTTP server:

To choose new manifests to display in them, edit mirador.html and universalviewer.html.

5. biiif and osullivan

biiif is a JavaScript utility for automating the generation of IIIF manifests by building filesystem hierarchies according to some conventions.

osullivan is a Ruby implementation of the Presentation API. There are similar libraries for Java and Python.

See biiif.js and osullivan.rb.

Optional: try biiif

To run the biiif demo, run

cd ~/workspace
./biiif.sh

This will create a manifest at iiif-manifests/biiif_test_github_avatars.json.

Due to either the limitations of biiif or our understanding of its usage, you'll need to edit the resulting manifest file to correct some of the resource identifiers:

sed -i \
    -e 's/index\.json/biiif_test_github_avatars\.json/' \
    -e 's/_canvas-\([[:digit:]]\+\)\//_canvas-\1%2F/' \
~/workspace/iiif_manifests/biiif_test_github_avatars.json

NOTE: biiif only generates manifests according to Presentation API 3.0, so you may currently only view the manifests it creates with UV

Optional: try osullivan

To run the osullivan demo, run

cd ~/workspace
ruby osullivan.rb ~/workspace/cantaloupe_images/kabuki > ~/workspace/iiif_manifests/osullivan_test_kabuki.json

This will create a Presentation API 2.x manifest at iiif-manifests/osullivan_test_kabuki.json, which you may view with either Mirador or UV.

iiif's People

Contributors

kirschbombe avatar sourcefilter avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.