/gh-pages

Primary LanguageTypeScriptMIT LicenseMIT

Canopy IIIF

A purely IIIF sourced static site generator using Next.js. Canopy is an application that will build a browseable and searchable digital collections style static site entirely from a IIIF Collection and the items it contains.

Warning Canopy is a work in progress and being built in public.

Examples

  • IIIF Presentation API 3.0
  • 119 items
  • Provided by Northwestern University Libraries
  • IIIF Presentation API 3.0
  • 90 items
  • Provided by University of Tennessee Libraries
  • navPlace + Map
  • IIIF Presentation API 3.0
  • 1120 items
  • Provided by University of Tennessee Libraries
  • IIIF Presentation API 3.0 w/ Video Canvases
  • 43 items
  • Provided by University of Tennessee Libraries
  • IIIF Presentation API 2.0
  • 529 items
  • Provided by Bodleian Libraries, University of Oxford

Roadmap

Content

  • Manifest as a /work/ page
  • Collection as a /collection/ page
  • Documentation for best-practice incorporating non-IIIF front matter
  • Homepage metadata sliders

Data Aggregration

  • Collection of Manifests (i.e. depth === 1)
  • Collection of Collections (i.e. depth > 1)
  • Harvesting of curated metadata labels
  • Leveraging BCP 47 and internationalization

Search

  • Basic search on label(s)
  • No results language
  • Search on summary and metadata entries
  • Search page facets on curated metadata
  • next/link routing from Work metadata to search page facets

User Interface & Experience

  • Fully Responsive
  • Continuous scroll & lazy load of search results
  • Custom theme support

Configuration

  • Localization preferences
  • Site title label override
  • Slug pattern options

Setup

Install Dependencies

# installation
npm i

Running in Development

# development
npm run dev

Building in Production

# build
npm run build

Configuration

Canopy IIIF uses a default configuration config/.default/canopy.default.json for demonstration purposes if a custom one is not set. The build process will read from a custom configuration file at config/canopy.json if it exists. Please review configuration documentation for customization of Canopy IIIF.

License

This project is licensed under the MIT License.