Skip to content

SE-UUlm/snowballr-frontend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SnowballR

SnowballR is a web-based tool supporting Systematic Literature Reviews (SLR).

SnowballR's use cases

Open Use Cases GitHub issue custom search

To keep track of the use cases we are working on, we are using the GitHub project board feature. You can find them here.

Getting Started

Note: Currently it is only possible to build from source.

To get started clone this repository and install the dependencies:

git clone [email protected]:SE-UUlm/snowballr-frontend.git
cd snowballr-frontend
npm install

Next the API need to be integrated by initializing the corresponding submodule1 and compile the proto files containing the API specification:

git pull
git submodule update --init --recursive
npm run compile:proto

To run the app, you need to create a .env file in the root directory of the project. The file should contain the following environment variables (see .env.example for an example):

Variable Description
PUBLIC_API_BASE_URL The URL of the backend API.

After completing these steps, you can start a development server with:

npm run dev

or create a production version of your app:

npm run build

You can preview the production build with npm run preview.

Note: To deploy your app, you may need to install an adapter for your target environment.

Testing

To test the functionality of our app we employ unit, integration and end-to-end tests. To run all tests at once you can use:

npm run test

or

npm run test:and-open-coverage

to run the test and open the generated coverage report.

Unit Tests

Unit tests are used to test individual functions or components in isolation. They are located in the tests/unit directory. Run them with:

npm run test:unit

Integration Tests

Integration tests are used to test the interaction between different components or functions. They are located in the tests/integration directory. Run them with:

npm run test:integration

End-to-End Tests

End-to-end tests are used to test the functionality of the app as a whole. They are located in the tests/e2e directory. Run them with:

npm run test:e2e

Lighthouse

We use Lighthouse to audit the performance, accessibility and best practices of our app. To install Lighthouse, run:

npm install -g lighthouse

To run a Lighthouse audit on the app, you can use:

npm run lighthouse -- http://localhost:4173/path

The report will be saved in the ./lighthouse-reports directory.

Footnotes

  1. Make sure, that the used API version was manually set to the desired stable version, otherwise set it (see here for further hints).