PubGolf
En mobilapp för att organisera och spela PubGolf med vänner, vidareutvecklad över två kurser från en första fungerande prototyp till en mer genomarbetad mobil tjänst.

Från prototyp till robustare app
PubGolf började som ett projekt i Prototyputveckling för mobila applikationer, där gruppen byggde en fungerande grundapp. I en senare kurs, Innovativa mobila tjänster och system, tog vi upp samma produkt igen och arbetade vidare med design, arkitektur och kodkvalitet. Den senare versionen refaktorerade bland annat navigation, komponentstruktur och datahantering för att göra systemet lättare att underhålla och vidareutveckla på både Android och iOS.

Spelflödet
Appen samlar det som annars behöver koordineras manuellt: inloggning, att skapa eller gå med i ett spel, lobby, val av pubar och inställningar, själva rundan samt slutresultat. Supabase används för autentisering och datalagring, och den senare versionen arbetade även med realtidsuppdateringar och effektivare hämtning av speldata för att minska antalet onödiga databasfrågor.

Wheel of Doom
I den senare versionen lade vi till Wheel of Doom som en valbar del av spelet. Den som skapar spelet kan välja hur många hål som ska använda funktionen, och spelaren snurrar sedan fram en uppgift innan resultatet bekräftas. Vi byggde funktionen med React Native-animationer och SVG-grafik för att göra den digitala versionen mer lekfull än en vanlig poängräknare.

Mitt bidrag & lärdomar
Mitt tydligaste ansvarsområde var flödet runt att skapa ett spel, gå med i ett spel och lobbyn. Jag implementerade dessa delar och var även med och designade vyerna. Arbetet i gruppen var samtidigt gemensamt: vi diskuterade lösningar tillsammans och hjälpte varandra när implementationen fastnade. Projektet gav mig framför allt en djupare förståelse för React Native och Supabase, och den andra kursomgången visade hur stor skillnad refaktorering och tydligare komponentgränser kan göra när flera personer arbetar i samma kodbas.
