Python GUI tool to collect metadata for DSP projects.
Project description
DSP-METADATA-GUI Metadata Module
The dsp-metadata-gui
is a GUI application written in Python for collecting project specific metadata
and turn it into RDF.
As part of the dsp-tools
, its aim is to enable researchers and project managers who deposit research data on the DSP (DaSCH Service Platform), to add metadata about the project and datasets to the DSP repository. By providing metadata, the project will be findable on the platform, which is an integral part of the FAIR principles.
The metadata follows the schema defined by the dsp-ontologies.
Install and run
The module provides a command line entry point to run the GUI. The only requirement is Python 3 and PIP installed and ready to use.
The application has only been tested on Python 3.9, but it might work on older versions too.
Note: There have been issues with conda
installations. If this is the case, consider using a virtual environment.
Installation via pip
To install the application, run:
pip install dsp-metadata-gui
Or respectively:
pip3 install dsp-metadata-gui
Afterwards, the program can be started by running the command dsp-metadata
in your terminal of choice.
Installation from source
Clone this repo and run make make-and-run
. If you don't use GNU Make, run the commands specified in the Makefile
manually.
This will package the application, install it to your python environment and run the application.
Usage
The Application is divided into two widows:
-
The main window lets you organize a list of projects, for which you can collect metadata. Several actions can be performed with projects, e.g. editing or exporting the project.
-
When editing a project, in the project window, the actual metadata can be added, modified and saved.
To add a project, you will need the project short code, which is assigned to you by the DaSCH Client Service.
A project is always associated with a folder on your local machine. If any files should be included with the metadata import, these files must be within that folder.
Once all metadata are added and valid, and the overall DRF graph of the metadata set validates against the ontology, the project can be exported for upload to the DSP.
All data is locally stored in the file ~/DaSCH/config/repos.data
. for more detail, see here.
{== TODO: fix this link in readme (works in doc) ==}
Development
Development Environment
Pipenv
Use pipenv
for a seamless development experience.
In order to have both dependencies and dev-dependencies installed from the Pipfile
, set up the virtual environment running
pipenv instal --dev
pipenv
will manage dependencies as well as a virtual environment. To install packages, use
pipenv install <package-name>
To create requirements.txt
, run
pipenv lock -r > requirements.txt
To bring setup.py
up to date, run
pipenv run pipenv-setup sync
GNU Make
GNU Make
is used to automatize most tasks.
Run make help
for info on the available targets.
Note: All make targets - except make run
- should be run from within the pipenv
shell:
Either by running
pipenv run make <target-name>
or by opening a virtual pipenv shell by running
pipenv shell
make <target-name>
...
exit
Documentation
The documentation is created using mkdocs
and mkdocstrings
with markdown_include.include
. To create the documentation, make sure to install all of these, using pip.
To serve the documentation locally, run make doc
. To deploy the documentation to github pages, run make deploy-doc
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for dsp-metadata-gui-0.0.0rc4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7823208ac304a9d1e6008bda7f5c4c05109e6a6453914f29ec5b3b2700812cc |
|
MD5 | c85f8101e03fc0712f65467e54405531 |
|
BLAKE2b-256 | 5fd144a11e6913f0d682c62faccb116c89e3abb59fdb34d47284c90830d97e30 |
Hashes for dsp_metadata_gui-0.0.0rc4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d4b5c154edaa7d30281450c260c5bdbdd8932c7ec28703be280df0f4b620dc4b |
|
MD5 | 6aba5bd25817617b0c7819da93864bef |
|
BLAKE2b-256 | a2f7ef8bf128c1d543ac410d4124864bf6faeefe65d380748f7340feaa0b426d |