Skip to content

Latest commit

 

History

History
71 lines (47 loc) · 2.68 KB

CONTRIBUTE.md

File metadata and controls

71 lines (47 loc) · 2.68 KB

How to Contribute

Bug Reports and Feature Requests

Please, submit bug reports and feature requests using the GitHub issue option.

Contribute Code

This page describes the steps to set up the application for development on your PC.

Prerequisites

The following software packages are required:

  • an NVD-API-Key to fetch CVE information. Get one at nvd.nist.gov,
  • an installation of Docker and docker-compose (this may require additional software such as Docker Desktop on Windows and macOS),
  • an installation of Python (version >= 3.11), and
  • an installation of node.js.

Preparation of the Development Environment

Configuration

Users and Credentials

There are two ways to set up users and their credentials. The most basic setup (only recommended for development) is to have one regular user and one administration user. The more sophisticated setup is to use an LDAP server with configured users and two groups (one for regular users, the other for administrators). The development setup supports both ways. See (see backend/env.template) for details.

Prepare the Backend

  • Create a virtual Python environment and activate it.
  • Go to the directory backend.
  • Run python3 -m pip install -r requirements.py in a shell. This will install all required Python packages (including Django) into your virtual environment.

Run the Backend and Helper Services

  • Go to the root directory.
  • Run docker-compose build and docker-compose up -d in a shell.

Prepare and Run the Frontend

  • Go to the directory frontend.
  • Run npm install (if you get an error about a missing version, see Troubleshooting).
  • Run npm run dev.

Login into the Application

  • Open a browser and load http://localhost:8080/ .
  • Use ANY email address as username and the password provided in the file .env.

Troubleshooting

Error No version is set for command npm while running npm install

You have not selected a Node.js version to use yet. Create a small ASCII file with filename ~/.tool-versions containing the version returned by the failed npm call, e.g.

 nodejs [VERSION]