Next Goal è progettato per fornire il massimo supporto agli utenti nella composizione e lo studio delle loro giocate relative ad eventi calcistici.
Le funzionalità di ricerca avanzate consentono di minimizzare il tempo speso nello studio di squadre e competizioni, permettendo all'utente di trovare facilmente gli eventi relativi alle metriche desiderate ed effettuare rapidi confronti.
Il progetto front-end è realizzato in Vue JS e Buefy per la UI, un framework basato su Bulma.
Sono state utilizzate librerie e API di terze parti per le informazioni in tempo reale delle competizioni di calcio.
Server side è stato utilizzato Feathers, un framework NodeJS per la gestione del database e l'utilizzo di Rest API.
L'obiettivo principale di user experience è stato quello di progettare un sistema che permettesse agli utenti di avere una visione chiara delle metriche più favorevoli relative a squadre ed eventi, dalle quali partire per comporre le proprie giocate. Si è prestata estrema attenzione alla funzionalità di ricerca, che funge da punto di partenza per l'esplorazione della grande mole di informazioni consultabili, che dovevano essere sempre comprensibili.
Per fare tutto ciò la sfida tecnica più ardua è stata quella di evitare il congestionamento di troppe chiamate e operazioni in parallelo; un un sistema di caching intelligente fa si che i tempi di risposta delle query di ricerca siano mantenuti sempre bassi, agevolando la navigazione e la consultazione dei contenuti del sito.
Siamo partiti con una fase di UX che è durata circa 2 settimane, analizzando le richieste del cliente, visionando e studiando il sito web che aveva fatto realizzare precedentemente, che presentava però diversi problemi di usabilità che hanno impedito di lanciarlo sul mercato.
Abbiamo strutturato l'implementazione in diversi cicli, concordati con il cliente, rilasciando alla fine di ognuno di essi un nuovo modulo dell'applicazione, che doveva risultare sempre funzionante a livello globale.
Il versioning del codice del progetto è stato gestito con Git mentre la gestione delle versioni dell'app è realizzata sulla base della versione del package.json.
L'applicazione web prevede diversi piani di sottoscrizione a pagamento consultabili liberamente dalla landing page.