Skip to content

A collection of Islandora microservices, lovingly known as Crayfish.

License

Notifications You must be signed in to change notification settings

Islandora/Crayfish

Repository files navigation

Crayfish Crayfish

Minimum PHP Version Build Status Contribution Guidelines LICENSE codecov

Introduction

A collection of Islandora 8 microservices, lovingly known as Crayfish. Some of the microservices are built specifically for use with a Fedora Repository and API-X, while others are just for general use within Islandora 8.

Requirements

The minimum requirements for any microservice are

Many microservices have extra installation requirements. Please see the README of each microservice for additional details.

Services

Crayfish contains the following services

  • CrayFits: FITS as a microservice.
  • Homarus: FFmpeg as a microservice.
  • Houdini: ImageMagick as a microservice.
  • Hypercube: Tesseract as a microservice.
  • Milliner: Microservice that converts Drupal entities into Fedora resources.
  • Recast: Microservice that remaps Drupal URIs to add Fedora to Fedora links based on associated Drupal URIs in RDF.

See the individual services for more information on their endpoints.

Security

Crayfish microservices use JWTs to handle authentication like the rest of the Islandora 8. It is disabled by default. To enable, set security enabled to true in cfg/cfg.php for any microservice. You can also set the path to an xml configuration file for security a la Syn with the security config parameter.

Development

If you would like to contribute, please get involved by attending our weekly Tech Call. We love to hear from you!

If you would like to contribute code to the project, you need to be covered by an Islandora Foundation Contributor License Agreement or Corporate Contributor License Agreement. Please see the Contributors pages on Islandora.ca for more information.

We recommend using the islandora-playbook to get started. If you want to pull down the submodules for development, don't forget to run git submodule update --init --recursive after cloning.

Maintainers

This project has been sponsored by:

  • American Philosophical Society
  • Born-Digital
  • discoverygarden inc.
  • LYRASIS
  • McMaster University
  • PALS
  • University of Limerick
  • University of Manitoba
  • UPEI
  • Simon Fraser University
  • York University

License

MIT