/OneStop4All-Implementation

This repo is a fork of https://git.rwth-aachen.de/nfdi4earth/onestop4all/onestop4all-implementation

Primary LanguageTypeScriptApache License 2.0Apache-2.0

OneStop4All

The OneStop4All is the primary visual and user-friendly NFDI4Earth access point. It offers a coherent view on and points to all relevant Earth System Sciences (ESS) RDM resources provided by NFDI4Earth members and the ESS community, such as data repositories, software tools, information on Research Data Management (RDM), education and training materials. Learn more about our Mission and the Resources.

You can install the OneStop4All using Docker or by installing the backend and frontend separately.

Very quick start

$ git clone https://git.rwth-aachen.de/nfdi4earth/onestop4all/onestop4all-implementation.git
$ cd onestop4all-implementation
$ git checkout develop
$ docker compose build --no-cache //Only needed if there any changes in the source Code
$ docker compose up

Not so quick start

Ensure that you have Node (Version 16 or later) and pnpm (Version 8.x) installed.

Then execute the following commands to get started:

Step 1: Install backend. First, you need to create a personal access token. Then, you can clone the repository using the following command.

$ git clone https://<username>@git.rwth-aachen.de/nfdi4earth/onestop4all/onestop4all-harvester.git

Update backend

The stable branch is main and current developments can be seen in feature/new_harvesters. Updates in the main branch require the following steps:

1_1 docker volume ls to find the exact name of the volume.

1_2 docker volume rm <onestop4all-harvester_devcontainer_data> to remove the volume. If the volume is in use by a container, run docker stop <CONTAINER ID> and docker rm <CONTAINER ID>. Then, again docker volume rm <onestop4all-harvester_devcontainer_data>.

1_3 git pull

Then, start Docker Desktop (In case you're using Windows) and open the folder "onestop4all-harvester" in Visual Studio Code, press F1 and "Rebuild and reopen in Container". Next, open the file "harvest.py", press F5 and "Debug the currently active Python file". These steps will build the indices based on the data from the Knowledge Hub. Currently, building indicses takes around 10 seconds.

Step 2: Install web app. Finally, you need to switch to the branch "develop", which should be more or less stable.

$ git clone https://git.rwth-aachen.de/nfdi4earth/onestop4all/onestop4all-implementation.git
$ cd onestop4all-implementation
$ git checkout develop
$ pnpm install

If you are using Windows, you will now need to change line 35 in the file .eslintrc from "linebreak-style": ["error", "unix"] to "linebreak-style": ["error", "windows"]

$ pnpm run dev

The app should now be available under http://localhost:5173/.

With docker (currently under development)

docker build -t "onestop4all-ui:latest" .
docker run --rm -p 80:80 -e SOLR_URL="http://localhost:8080/http://localhost:8983/solr"  onestop4all-ui:latest

License

Apache-2.0

Contact

Markus Konkol, 52°North

Contributors

Christin Henzen, Auriol Degbelo, Markus Konkol, Simon Jirka, Jan Schulte, Arne Vogt, Christoph Wagner, Jonas Grieb, Ralf Klammer.

Funding

This work has been funded by the German Research Foundation (DFG) through the project NFDI4Earth ( TA2 M2.1 , DFG project no. 460036893, https://www.nfdi4earth.de/) within the German National Research Data Infrastructure (NFDI, https://www.nfdi.de/).