Introduction

This project was created for the course Data Stewardship, summer term 2020 at TU Vienna. The goal of this open source project is to provide a system that allows users to manage and expose machine readable data management plans (maDMPs) to achieve FAIR data (see TU Vienna FAIR, Exposing maDMPs).

Features

Technical Implementation

Key technologies

Backend:

Front end:

Installation and Running the project

Prerequisites

Backend (Application Server)

First, make sure max_map_count is at least 262144, otherwise set its value with the command sudo sysctl -w vm.max_map_count=262144. If the value is too low, the elasticsearch service might fail.

Alternatively, just use the script build_and_start.sh

Frontend

In frontend/, run npm install and npm start to start the development server

Usage

After following the steps above for both backend and frontend, the application is reachable on localhost port 4200. The standard test user created is:

In Order to be able to assign new dois, the Datacite account has to be configured. In the resources folder of the backend project (on the same level as application.properties) create a file with the name “auth.properties” and the following content:

application.rest.doiservice.username=[username]
application.rest.doiservice.password=[password]
application.rest.doiservice.prefix=[doi prefix]

Importing maDMPs from the Zenodo community

The DMPs from the Data Stewardship Community can be downloaded using a simple python script, which fetches all DMPs using the Zenodo API, authenticates with mapleDocs and automatically uploads all of them. Of course this script can easily be configured to fetch maDMPs from another api and upload them to mapleDocs.

Local Development

Some tips for local development and setup:

Examples and Screencasts

Follow the links below to get a short preview of the look and some first features of the application:

Uploading maDMPs

In this screencast we present the submission (upload) of maDMPs to the mapleDocs server, including the automated assignment of a new DOI if the maDMP to upload does not have one yet.

screencast

Here we present another core feature: mapleDocs powerful search, encompassing the three search modes: full text search over full maDMPs, combined search and custom search.

screencast

Hiding fields

In this screencast we present hiding of fields for other users with json path expressions on maDMP upload.

screencast

Architectural Diagram

Architectural Diagram

Resources

Schema and maDMPs

Contributors

License