maDMP-Generation-Form is a web application designed to help you generate machine-actionable Data Management Plans (maDMPs) for your research data. This tool is based on the maDMP-Standard.
- Choose your desired maDMP version
- Create a new maDMP
- Validate your maDMP using the validation button
- Save your maDMP by downloading it as a JSON file
- Print the form to save it in a human-readable format
- Upload a JSON file to edit an existing maDMP
- Node.js
- npm (Node Package Manager)
-
Clone the repository:
git clone https://github.com/FAIRERdata/maDMP-Generation-Tool.git cd maDMP-Generation-Tool -
install the dependencies
npm install
-
start the development server
npm run dev
To build the application for production, run:
```bash
npm run build
```
To preview the production build, run:
```bash
npm run preview
```
To deploy the application to GitHub Pages, run:
```bash
npm run deploy
```
- Choose your desired maDMP version from the dropdown menu.
- Fill out the form with the required information.
- Validate your maDMP using the validation button at the bottom.
- Save your maDMP by downloading it as a JSON file.
- Print the form to save it in a human-readable format.
- Upload a JSON file to edit an existing maDMP using the choose file button.
- Make the necessary changes to the form.
- Validate your maDMP using the validation button at the bottom.
- Save your maDMP by downloading it as a JSON file.
This tool automatically fetches the schema metadata from this github folder. To add or delete schemas choices in the webform, you need to add or delete corresponding information in the schema_metadata file.
To create your own version of GCWG-RDA-maDMP schema, following the instructions in this README file
The part above the form is the intro part. It is fetched and generated dynamically. To modify the intro part, you should modify the intro.html file.
To view the author statement, click on the "Author Statement" link in the application. This will open a modal with detailed information about the authors.
The author statement is fetched and generated dynamically. To change its content, you only need to modify the authorStatement.html file.
The disclaimer popup is also fetched and generated dynamically. To change its content, you only need to modify the disclaimer.html
- Dynamic Table of Contents (TOC):
- The TOC is dynamically generated based on the formData, which is derived from the JSON schema.
- However, the order of some fields is inaccurate due to the handling of dependencies with the allOf keyword in the JSON schema. The allOf keyword, often used for merging dependencies, is placed at the end, and thus the fields in allOf are placed last, which does not always align with the original Orange Tab ordering.
- HTML Links in Descriptions: Some JSON schema descriptions contain HTML links, but these are currently rendered as plain text rather than clickable HTML elements in the form. My attemps to solve this problem is in CustomFieldTemplate