Git Product home page Git Product logo

islandora_workbench's Introduction

Islandora Workbench

A command-line tool that allows creation, updating, and deletion of Islandora content from CSV data. Islandora Workbench is an alternative to using Drupal's built-in Migrate tools for ingesting Islandora content from CSV files. Unlike the Migrate tools, Islandora Workbench can be run anywhere - it does not need to run on the Islandora server. The Migrate tools, however, are much more flexible than Islandora Workbench, and can be extended using plugins in ways that Workbench cannot.

Note that this tool is not related in any way to the Drupal contrib module called Workbench.

Features

  • Allows creation of Islandora nodes and media, updating of nodes, and deletion of nodes and media from CSV files
  • Allows creation of paged/compound content
  • Can run from anywhere - it communicates with Drupal via HTTP interfaces
  • Provides robust data validation functionality
  • Supports a variety of Drupal entity field types (text, integer, term reference, typed relation, geolocation)
  • Can provide a CSV file template based on Drupal content type
  • Can use a Google Sheet or an Excel file instead of a local CSV file as input
  • Allows assignment of Drupal vocabulary terms using term IDs, term names, or term URIs
  • Allows creation of new taxonomy terms from CSV field data, including complex and hierarchical terms
  • Allows the assignment of URL aliases
  • Allows adding alt text to images
  • Supports transmission fixity auditing for media files
  • Cross platform (written in Python, tested on Linux, Mac, and Windows)
  • Well tested
  • Well documented
  • Provides both sensible default configuration values and rich configuration options for power users
  • A companion project under development, Islandora Workbench Desktop, will add a graphical user interface that enables users not familiar or comfortable with the command line to use Workbench.
  • Run from within a Docker container.

Documentation

Complete documentation is available.

Contributing to Workbench

Contributions to Islandora Workbench are welcome, but please open an issue before opening a pull request.

Testing

Metadata, files, and Drupal configurations are, in the real world, extremly complex and varied. Testing Islandora Workbench in the wild is best way to help make it better for everyone. If you encouter a difficulty, an unexpected behavior, or Workbench crashes on you, reach out on the #islandoraworkbench Slack channel or open an issue in this Github repo.

Using Workbench and reporting problems is the best way you can help make it better!

Documentation and code

  • If you have a suggestion for improving the documentation, please open an issue on this repository's queue and tag your issue "documentation".
  • If you want to contribute code (bug fixes, optimizations, new features, etc.), consult the developer's guide.

Current maintainer

Mark Jordan

License

License: MIT

islandora_workbench's People

Contributors

ajstanley avatar alxp avatar aoelschlager avatar donrichards avatar gii2000 avatar hassanelsheikha avatar jefferya avatar manez avatar misilot avatar mjordan avatar noahwsmith avatar rosiel avatar ruebot avatar seth-shaw-asu avatar seth-shaw-unlv avatar willtp87 avatar ysuarez avatar

Watchers

 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.