Giter VIP home page Giter VIP logo

islandora_workbench_desktop's Introduction

Islandora Workbench Desktop

Desktop application that provides a graphical user interface for the Islandora Workbench command-line tool.

Requirements

Installation

  1. Install Islandora Workbench.
  2. Install Electron.
  3. git clone https://github.com/mjordan/islandora_workbench_desktop.git. It is best (see below) that you clone this repository into a directory that is a sibling of the directory that Islandora Workbench is installed in.
  4. npm install
  5. Copy the workbench_desktop.yml file into the Islandora Workbench directory.

Usage

Preparing configuration files

You can use Workbench Desktop with any Islandora Workbench configuration file, with one difference: all file paths in configuration files must be absolute or relative to the Workbench Destop directory. For example, if Islandora Workbench and Islandora Workbench Desktop are installed in sibling directories, the relative file path in the input_dir configuration setting would look like this:

input_dir: ../workbench/input_data

A sample configuration file, workbench_desktop.yml, is included with Workbench Desktop to illustrate this requirement.

Running Workbench Desktop

Note: The spreadsheet editor, added in commit 360d454fd683af5e962090b38b7c4b7cdff92087, is still a work in progress.

  1. Make sure your Islandora instance is running.

  2. In the Islandora Workbench Desktop directory, open a terminal and run npm start (we will eventually provide a clickable icon for Workbench Desktop, like any other desktop application has).

  3. You will need to tell Workbench Desktop where the workbench exectuble script is. To do this, open the "Application" menu and choose the "Set path to workbench" item. A file selector dialog box will appear; browse to the workbench script and select it. You only need to do this once, not every time you run Workbench Desktop.

  4. To execute Workbench Desktop, you will need to select a configuration file. To do this, open the "Task" menu and choose "Choose a configuration file". Only YAML files show up in this file chooser.

  5. After you've selected your configuration file, you are ready to check your configuration and data. Click on the "Check configuration and data" button. You will then see the output of Workbench's checks:

    Workbench checks

  6. If the checks pass, you can then run the task (create new content, update content, etc.). Click on the "Run task" button. You will then see the output of the task. As each node and media is created/updated/deleted, a message will be added to the output. When finished, it will look similar to this, depending on the task:

    Workbench task output

If you ran a create task (for example), the nodes and media will be in your Islandora instance:

Workbench Desktop with output

Viewing the Workbench log

To view Workbench's log file, open the "Applicaiton" menu and choose "View log file", or hit Ctrl-l (L). The log (which currently must be in the default location) will appear:

Workbench Desktop with output

To return to the main window, open the "Applicaiton" menu and choose "Return to main window", or hit Ctrl-m.

License

The Unlicense.

islandora_workbench_desktop's People

Contributors

donrichards avatar mjordan avatar seth-shaw-unlv avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

islandora_workbench_desktop's Issues

Have log viewer open in new window

The way it works now, it replaces the main window, and when you return, the state of the main window is lost. Users may want to see both the main window and the log at the same time.

HTTPS support

The http client that checks if Islandora is running cannot issue an https request. I'm getting the following error.

Type Error [ERR_INVALID_PROTOCOL]: Protocol https: not supported. Expected http:

The client also does not follow redirects, so attempting to trick it with the http -> https redirect results in

Error: Request Failed
Status Code: 301

Add check to see if Islandora host is running and responding

The workbench script performs this check but we probably should do it in desktop too so it's easier to display a nice warning to the user. We need to check both that Islandora is up and running and that the credientials provided in the config file are valid.

Idea here is that if Islandora is not responding, Workbench Desktop should not call the python script but should tell the user to investigate.

If user runs task without running check first, warn them

It's extremely important to run workbench in 'check' mode before ingesting/deleting/updating content. Requiring a check is probably going to far, but it's probably a good idea to warn the user if they try to ingest without having first run a check.

Add identifier field config to spreadsheet editor

A unique ID field is now required for 'create' tasks. Unfortunately, the config generated by spreadsheet editor doesn't include a unique ID field. We need to make this configurable.

Bonus feature: proactively highlight rows that don't have a value in that column.

Check configuration and data gives error message

I've setup the islandora_workbench_desktop repo accordingly in a sibling directory to islandora_workbench but after setting the path to workbench and config file and running the check I get an error saying Request Failed. Status Code: 404 Unexpected token < in JSON at position 0 I can ingest a file by running islandora_workbench in command line with the same config file (with a changed input_dir as per specifications) but when I run it within workbench_desktop it gives the error.

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.