Gruppeprosjekt i IT1901 Informatikk prosjektarbeid i 2. klasse på NTNU. Backend er laget med Spring Boot som klienten kommuniserte med via REST API. Den første versjonen av klienten ble skrevet i JavaFX mens den endelige versjonen er laget i React. Automatiske tester er skrevet med JUnit og Cypress.
Kode til backend av applikasjonen, inkludert web-server og REST API-grensesnitt. Modulært Java-prosjekt med modul for domenelogikk (core
), persistens (json
) og web-server (restapi
).
Førsteversjonen av brukergrensesnittet, laget med JavaFX, ligger også i ui
-modulen her. Se også Figma-modellen, som ble brukt under utvikling av designet og deretter realisert via ui
-modulen.
Klient-delen av applikasjonen, laget med React. Er avhengig av forbindelse med server for å lagre og hente tilstand (kan midlertidig lagre tilstand på egenhånd).
Dokumentasjon til app. Mye dokumentasjon ligger også i README-filer sammen med kodebasen.
For å kjøre prosjektet i utviklermodus kjører man kommandoene npm start
i appetite-klient og mvn spring-boot:run
i appetite-server.
For å kjøre prosjektet i produksjonsmodus, så kan man bruke npm run build
i appetite-klient. Dette bygger appen som er ment til å brukes av sluttbruker, og finnes her.
Ved å åpne prosjektet i GitPod vil man få servert tre terminaler:
- Henter nødvendige pakker for å få kjørt
react test
med Cypress. Denne terminalen sender signal til Terminal 2 når disse er hentet, og venter på signal fra Terminal 2, før den starter testene. - Denne terminalen venter på signal fra Terminal 1 og Terminal 3 før den konfigurerer localhost.js slik at gitpods url på port 8080 brukes av React. Installerer de nødvendige pakkene for Eeact. Samt starter React-appen. Sender signal til Terminal 1 (ti sekunder etter
npm start
). - Kjører
mvn install
, sender signal til Terminal 2, for derretter å starte webserver medmvn spring-boot:run
.