# Spontaneous

![BigSize.png](./Assets/BigLogo.png)

# Usage

## Development

Create a branch from develop and merge your changes back with a PR towards develop.

### Install & Setup

These technologies have to be installed:
- Dotnet 7: https://dotnet.microsoft.com/en-us/download/dotnet/7.0
- NPM: https://docs.npmjs.com/downloading-and-installing-node-js-and-npm

Run these commands to setup the components:

Clone the repository and go to the top level folder of spontaneous:

`git clone https://gitlab.ost.ch/SEProj/2023-FS/g09-spontaneous/spontaneous.git`

#### Frontend

Go to the frontend folder and install the npm packages.

`cd ./Frontend`

`npm install`

#### Code Quality Tools

- Install the SonarLint https://www.sonarsource.com/products/sonarlint/ plugin for the backend & frontend in Rider / Visual Studio / VS Code / Webstorm
- Install ReSharper in Rider or Visual Studio: https://sales.jetbrains.com/hc/en-gb/articles/360001214539-How-to-Install-and-Activate-ReSharper-

#### DB

Install the docker-compose for our MongoDB in docker. 

### Build & Run

#### Backend

Execute in the backend folder this command.

`dotnet run`

- Open https://localhost:9999/swagger/index.html to see the API endpoints in swagger. (Adjust the port)


#### Frontend

Execute in the frontend folder this command.

`npm start`

#### DB

- Start the MongoDB docker container. 