Skip to content
This repository has been archived by the owner on Aug 6, 2024. It is now read-only.

hifis-net/RSD-as-a-service

 
 

Repository files navigation

RSD-as-a-service

image

DOI Research Software Directory GitHub license fair-software.eu CII Best Practices Contributor Covenant Frontend tests Backend tests Scraper tests E2E tests Ubuntu E2E tests Firefox E2E tests Chrome E2E tests MacOS

❗ HIFIS Notes ❗

HIFIS Logo

Welcome to the HIFIS-Fork of the Research Software Directory. This fork contains adjustments for the Helmholtz version of the RSD.

::: End of HIFIS notes

Our mission: To promote the visibility, impact and reuse of research software

This repo contains the new RSD-as-a-service implementation. The service can be found at: https://research-software-directory.org

How to build and run the RSD

Building from source code

  1. Before installing the dependencies ensure that you have docker and docker compose V2 (see the documentation of Docker Compose) locally.
  2. You will also need make and yarn to automate the configuration and installation process.
  3. Set the required environment variables: Copy the file .env.example to .env file at the root of the project and fill the secrets and passwords. Check if the secrets are correct. The Makefile will take care about creating an appropriate frontend/.env.local from the .env file.
  4. Run make install to install all dependencies and build the docker images.

Running the services

# Start the containers via the make file
make start
# OR directly use docker compose
docker compose up

Stopping the services

# Stop all services via the makefile
make stop
# OR directly use docker compose
docker compose down

Developing the frontend

You can run frontend in development mode as docker a service (called frontend-dev) that enables hot reloading. By default this frontend-dev service will not be started automatically. For more detailed instructions see frontend/README.md.

# Run frontend development using docker at http://localhost:3000
make frontend-docker
# OR use docker compose directly
docker compose up --scale frontend=0 --scale scrapers=0 --scale frontend-dev=1

It is possible to directly run the frontend too (without using a docker container). You must then have NodeJS installed, preferably v18.

# Build and install all dependencies.
make install
# Run the frontend and the documentation on localhost:3000 and localhost:3030
make dev
# Stop all services with `docker compose down`
make down

More information about building and data migration can be found in Getting started documentation.

License

The content of this repository is licensed under several licenses. We follow the REUSE specification to indicate which license applies to the files specifically. Here are some general hints:

  • Helmholtz specific source code is licensed under EUPL-1.2
  • Source code coming from upstream is licensed under Apache-2.0
  • Documentation and most images are licensed under CC BY-4.0
  • Some files with trivial content, e.g. configuration files, are licensed under CC0-1.0

For more details on the licenses, please have a look at the file headers or associated *.license files. The terms of all used licenses are located in the LICENSES directory.