Početna / Radovi
Scoreboard
Softver za nogomet uživo

Scoreboard

Softver za klubove i lige koje vode vlastita nogometna natjecanja i žele ih prikazati uživo. LED semafor uz teren upali se u trenutku kad se zabilježi gol, a vodi ga operater s mobitela uz crtu — trenutak gola s imenom strijelca, na stvarnom zaslonu na terenu.

Jedna osoba vodi utakmicu s mobitela uz crtu — golovi, kartoni, izmjene, satnica — a semafor reagira na svaki dodir. Rezultat i satnica vode se na serveru, a ne na nekom od zaslona, pa i semafor i konzola mogu ispasti i ponovno se spojiti usred utakmice bez ikakvog gubitka. Oko njega stoji cijelo natjecanje — klubovi, ekipe, igrači, sezone, rezultati — pri čemu svaki operater vodi samo svoje.

Tehnologije.NET · Nuxt · SignalR
PovršinaLED semafor uz teren + operaterska konzola
LED semafor uz teren prikazuje live nogometni rezultat, klupske grbove i satnicu utakmice koja broji prema gore
Snimka uskoro
Semafor

Semafor uz teren koji se osvježi čim se zabilježi gol.

Semafor ispunjava zaslon na terenu jednom utakmicom — rezultat, satnica, klupski grbovi — i reagira u trenutku kad operater zabilježi događaj. Gol preuzme cijeli semafor s imenom strijelca; kartoni i izmjene prolaze trakom.

  • Zasebni prikazi za početak, igru uživo, poluvrijeme, kraj i ponovno spajanje
  • Preuzimanje za gol s imenom strijelca; traka za kartone i izmjene
  • Tipografija se skalira prema semaforu, pa proporcije ostaju na bilo kojoj veličini LED zida
Snimka uskoro
Konzola

Mobitel u rukama operatera vodi cijeli semafor.

S tamnog zaslona prilagođenog uvjetima uz crtu, operater bilježi golove, kartone, izmjene i promjene satnice — jedan stupac po klubu. Svaki dodir osvježi semafor; sama konzola ne drži stanje, pa može ispasti i ponovno se spojiti bez gubitka utakmice.

  • Jedan stupac po klubu: gol, žuti, crveni i izmjena, s biračem igrača s popisa
  • Dodir za pauzu; zadržavanje za napredovanje satnice kroz svaku fazu
  • Zadržavanje za kraj utakmice i potvrdu rezultata u jednoj gesti
Snimka uskoro
Model utakmice

Satnica i rezultat, koje server drži točnima.

Rezultat i satnica računaju se na serveru, ne nagađaju u pregledniku — pa semafor koji izgubi napajanje odmah prikazuje ispravno vrijeme čim se ponovno pokrene. Rezultat živi na samoj utakmici, a igrač koji mijenja klub ili ima dvije uloge u sezoni zabilježen je točno.

  • Pauza ili poluvrijeme zadrže svoje mjesto i ako se semafor ponovno učita
  • Nemogući potezi se odbijaju — bez dvostrukog pokretanja, bez nadoknade prije početka
  • Transferi i dvostruke uloge riješeni po dizajnu; golovi, kartoni, izmjene i raspucavanja zabilježeni
Snimka uskoro
Klubovi i lige

Jedan klub, više liga, uredno odvojeni.

Klub i liga različite su stvari, a jedan klub može istovremeno igrati u nekoliko liga. Svaki drži vlastite podatke, automatski odvojene tako da jedan operater nikad ne vidi tuđe utakmice — a odvajanje se ne može zaboraviti na upitu jer se ne piše ručno.

  • Svaki zahtjev vidi samo podatke vlastitog kluba i lige
  • Klub koji se natječe u više liga ostaje točan u svakoj
  • Uređaj semafora čita jednu utakmicu bez potrebe za računom
Kako je izrađeno
Backend i API
ASP.NET Core, EF Core, PostgreSQL, C#
Realtime
SignalR, WebSockets
Frontend
Nuxt, Vue, Pinia, Tailwind / Nuxt UI, TanStack Query
Infrastruktura i kvaliteta
xUnit, Vitest, SQLite in-memory tests