An open API service indexing awesome lists of open source software.

https://github.com/hbery/agh-class-divider

Aplikacja webowa do podziału zajęć dla studentów (projekt z MPT).
https://github.com/hbery/agh-class-divider

Last synced: 5 months ago
JSON representation

Aplikacja webowa do podziału zajęć dla studentów (projekt z MPT).

Awesome Lists containing this project

README

          

# AGH Class Divider

Projekt realizowany na przedmiot "Metodyki Projektów Teleinformatycznych" w roku 2022/2023

## Twórcy ✨



socheck
socheck

HBERY
hbery

agnieszkowe
agnieszkowe

krzysztof1235
krzysztof1235



kowaleuro
kowaleuro

wik-kwik
wik-kwik

agnieszkowe
vvafwgsv


## Opis projektu 📚

Projekt zakłada stworzenie aplikacji webowej służącej do podziału studentów na grupy zajęciowe według zgłoszonych preferencji za pomocą formularza - użyte zewnętrzne narzędzia. Zestaw preferencji jest eksportowany do formatu .csv, który następnie jest możliwy do wgrania na aplikację. Aplikacja za pomocą autorskiego algorytmu dokonuje przydziałów studenta do slotów zajęciowych, tak by w jak największym stopniu trspełnić jego preferencje. Ostatecznie osoba korzystająca z aplikacji otrzymuje plik .csv z przydziałem każdego studenta do grupy zajęciowej.

## Użyte technologie i języki

### Frontend

- React JS

### Backend

- Python
- Fast Api

### Środowisko wirtualizacyjne

- Docker

## WorkFlow projektu

- [tutaj](_docs/WORKFLOW.md)

## Opis algorytmu/modelu matematycznego

- [tutaj](/_docs/ENGINE_MODEL.md)

## Uruchomienie aplikacji

Całość aplikacji podzielona jest na dwa kontenery dockerowe, odpowiednio jeden dla Frontend i jeden dla Backend. Plik konfigurujący całe środowisko znajduje się w pliku `docker-compose.yml`, który pozwala na uruchomienie aplikacji za pomocą komendy `docker-compose up` będąc w zasięgu pliku. Komenda wystawia na porcie lokalnym `3000`, możliwość podłączenia się do strony www aplikacji.

- [instalacja Docker](https://docs.docker.com/get-docker/)
- [instalacja Docker compose](https://docs.docker.com/compose/install/)

## Zestawy testowe

Znajdują się w katalogu `tests/data/suite_{1..3}`