Pubblicato un rapido aggiornamento per RAWeb, la piattaforma sviluppata da RetroAchievements.org per la gestione di obiettivi, dati di gioco e funzionalità dedicate alla community.

L’applicazione, realizzata in Laravel sfruttando il TALL stack, si conferma così uno degli strumenti più versatili e in costante crescita per gli appassionati che vogliono monitorare i propri progressi e condividere le esperienze con altri utenti.
Our latest website update is now live!
– Catalan language support.
– Unsubscribe from notifications through emails.
– Subsets no longer count for average completion.For all changes, check out https://t.co/ytSELrf5dy or https://t.co/EU1eDYW1D5 pic.twitter.com/OGvGDTkboF
— RetroAchievements (@RetroCheevos) September 9, 2025
L’aggiornamento introduce diverse funzionalità interessanti. Le notifiche via email ora supportano la formattazione in HTML, rispettano le preferenze impostate dagli utenti e includono link per la disiscrizione.
Sul fronte della localizzazione è stata aggiunta la lingua catalana, mentre nella gestione delle statistiche sono state introdotte modifiche al calcolo delle percentuali di completamento escludendo i sottoinsiemi dei giochi.
Sono stati inoltre corretti vari bug che riguardavano la gestione delle richieste, l’ordinamento delle date di uscita dei giochi, il conteggio dei giocatori per titoli con subset condivisi, la gestione dello scorrimento delle pagine e alcune preferenze di notifica non funzionanti.
Sono stati risolti anche problemi legati alla console di amministrazione, in particolare per le note di codice, oltre a miglioramenti di performance e correzioni specifiche delle API, che ora includono nuove funzioni come l’endpoint PATCH per gli achievement e una migliore validazione delle chiamate relative ai giochi.
Sul piano dell’ambiente di sviluppo, sono stati aggiornati diversi pacchetti, rimossi componenti obsoleti e snellito il codice eliminando parti non più utilizzate.
Per il futuro sono già in lavorazione nuove funzioni che riguardano le pagine dei giochi in React, come l’introduzione delle classifiche, indicatori e etichette di progresso, la possibilità di azzerare i progressi con un apposito pulsante e una gestione grafica più pulita delle immagini.
Sono previsti anche miglioramenti al sistema di abbonamenti, con nuove funzioni per interrogare le sottoscrizioni dei giocatori e ottimizzare la logica delle detrazioni.
Requisiti
Per eseguire RAWeb localmente, sono necessari i seguenti componenti:
- Server web locale: È necessario un server web per eseguire l’applicazione.
- PHP 8.2: La piattaforma richiede PHP 8.2, con diverse estensioni abilitate (come
curl,gmp,mysqli,pdo_mysql,gd,intl,sockets). - Composer: Il gestore di dipendenze PHP, necessario per installare le librerie richieste da RAWeb.
- MariaDB 10: Il database supportato per memorizzare i dati.
- Node.js 20 e pnpm 9: Questi strumenti sono utilizzati per la gestione dei pacchetti frontend e la build degli asset.
RAWeb è compatibile con i seguenti sistemi operativi e configurazioni:
- Windows, macOS, Linux.
- Diverse opzioni di configurazione sono disponibili: Docker (con Laravel Sail), XAMPP e Laravel Valet per macOS.
Opzioni di configurazione
Esistono diverse opzioni per configurare RAWeb:
- Docker Compose (Windows, Linux, macOS):
Utilizzando Laravel Sail, l’ambiente di sviluppo viene creato automaticamente con i container Docker. La documentazione di Laravel Sail descrive i passaggi dettagliati. Una volta configurato, è possibile avviare i container con il comandosail upo in modalità demone consail up -d. - XAMPP (Windows, Linux, macOS):
È necessario installare XAMPP con PHP 8.2, che include un server Apache, MySQL/MariaDB e PHP. Si dovranno abilitare alcune estensioni inphp.ini(comecurl,gmp,mysqli, ecc.) per garantire la compatibilità con le dipendenze di RAWeb. - Laravel Valet (macOS):
Se si utilizza Laravel Valet su macOS, è possibile configurare facilmente l’ambiente locale. Valet agisce come driver per l’ambiente di sviluppo e fornisce una configurazione web locale senza complicazioni.
Installazione di RAWeb
Una volta che il server e le dipendenze sono configurati, l’installazione di RAWeb avviene in due fasi principali:
- Installazione delle dipendenze: Dopo aver clonato il repository di RAWeb, eseguire
composer installper installare tutte le librerie necessarie. Se si desidera utilizzare la versione locale di composer.phar invece di una globale, si può eseguirephp composer.phar install. - Configurazione dell’ambiente: È necessario eseguire il comando
composer setupper configurare correttamente l’ambiente. Questo script imposterà le variabili di ambiente e le configurazioni iniziali. Durante questa fase, si consiglia di adattare il file.envcon le credenziali del database e l’URL dell’applicazione.
Configurazione dell’ambiente (.env)
Il file .env contiene valori predefiniti sensati, ma potrebbero essere necessarie alcune modifiche:
- Credenziali del database: Impostare i valori per la connessione al database locale (DB_*).
- Configurazione dell’URL dell’applicazione: Impostare l’URL dell’applicazione (
APP_URL). Per esempio, se si usa Docker, l’URL potrebbe esserehttp://localhost:64000. Con Valet, potrebbe esserehttps://raweb.test.
Se si sta utilizzando un ambiente Docker, non sono necessarie ulteriori configurazioni specifiche, poiché l’applicazione rileverà automaticamente la configurazione del container Laravel Sail.
Se si utilizza XAMPP o Valet, sarà necessario regolare l’URL dell’applicazione e configurare correttamente i virtual host o il dominio.
Costruzione e configurazione del frontend
Per generare gli asset frontend:
- Installazione delle dipendenze frontend: Utilizzare
pnpm installper installare le dipendenze necessarie. - Costruzione degli asset: Eseguire
pnpm buildper creare la build finale. Con Docker Sail, è possibile eseguire questi comandi tramitesail pnpm installesail pnpm build. - Creazione dei symlink per il filesystem: Per rendere accessibili i file di archiviazione, eseguire
php artisan ra:storage:link --relativeper creare i collegamenti simbolici necessari. Anche questo comando è disponibile tramite Sail (sail artisan ra:storage:link --relative).
Configurazione del database
Dopo aver configurato l’ambiente e costruito gli asset, è necessario preparare il database:
- Esegui la migrazione: Esegui
php artisan migrateper applicare le migrazioni e configurare il database. - Popola il database con dati di test: Usa il comando
php artisan db:seedper popolare il database con i dati di test. Puoi eseguire anche questo comando tramite Sail (sail artisan db:seed).
Accesso all’applicazione
A seconda dell’ambiente scelto, puoi accedere all’applicazione nel seguente modo:
- Docker: http://localhost:64000
- XAMPP: in base alla configurazione del vhost di Apache.
- Laravel Valet: per esempio, https://raweb.test, a seconda della configurazione del dominio.
Utilizzo per lo sviluppo di obiettivi
Se desideri sviluppare obiettivi localmente, puoi aggiungere un file host.txt nella directory di RALibRetro accanto al file RAIntegration.dll. Questo file deve contenere l’URL del tuo server locale, che potrebbe essere uno dei seguenti:
- http://localhost:64000 se stai eseguendo il server tramite Docker.
- https://raweb.test se stai utilizzando Valet.
- http://raweb.test se il vhost è configurato correttamente.
Sicurezza
Per gestire eventuali vulnerabilità di sicurezza, consulta la Security Policy di RetroAchievements.org, che fornisce indicazioni su come gestire i rischi e proteggere la piattaforma.
In questo modo, puoi configurare e utilizzare RAWeb per gestire obiettivi, giochi e funzionalità della community direttamente dal tuo server locale.
Changelog
Nuove Funzionalità
- Notifiche e-mail: Utilizza e-mail in HTML per i ticket, rispetta le preferenze di notifica, aggiunge link per disiscrizione in tutte le e-mail in HTML by
@wescopelandin #3853 - Localizzazione: Aggiunta lingua Catalana by
Puniasterusin #3865 - Multiset: Escludere gli ID dei giochi sottoinsieme dalla percentuale media di completamento by
@wescopelandin #3871
Correzioni
- Reclami: Migliorate le condizioni della policy di gestione by
@wescopelandin #3864 - Game Lists: Reso l’ordinamento per data di rilascio più prevedibile by
@wescopelandin #3862 - Games: Utilizza il numero corretto di giocatori per i giochi con subset condivisi by
@wescopelandin #3848 - Scrolling: Sovrascrivi il ripristino dello scroll manuale aggressivo di Inertia by
@wescopelandin #3845 - Settings: Rimosse le preferenze di notifica non funzionanti, aggiornare le etichette delle preferenze esistenti by
@wescopelandin #3841 - Tickets: Non andare in errore se il valore dell’emulatore è null by
@wescopelandin #3850
Modifiche alla console di gestione
- Note di codice: Imposta
deleted_atquando si elimina una nota di codice by@wescopelandin #3866
Miglioramenti alle prestazioni
Modifiche alle API
- Connect API: Risolve correttamente l’ID del gioco root quando due giochi sono fratelli e condividono lo stesso subset by
@wescopelandin #3849 - Service API: Aggiunto un endpoint PATCH per gli achievement by
@wescopelandin #3802 - API_GetGameExtended: Aggiunta la validazione by
@wescopelandin #3844 - API_GetGameProgression: Se la lista filtrata è sufficientemente piccola, provare con un filtro più ampio by
@Jamirasin #3858
Modifiche all’ambiente
- Dipendenze: Aggiornato laravel-pivot all’ultima versione by
@wescopelandin #3877 - Dipendenze: Forza linkifyjs alla versione 4.3.2 by
@wescopelandin #3867 - Dipendenze: Rimosso nock by
@wescopelandin #3847 - Varie: Rimosso un po’ di codice inutilizzato by
@wescopelandin #3846 - Onboarding: Rimossa una colonna non utilizzata dallo schema MySQL by
@wescopelandin #3860
Funzionalità future
- Pagine Giochi in React: Aggiunte classifiche by
@wescopelandin #3820 - Pagine Giochi in React: Aggiunta l’etichetta dei progressi del giocatore all’intestazione del set by
@wescopelandin #3854 - Pagine Giochi in React: Aggiunti indicatori di progresso del giocatore all’intestazione del set by
@wescopelandin #3857 - Pagine Giochi in React: Aggiunto il pulsante “Reset all progress” alle pagine dei giochi in React by
@wescopelandin #3873 - Pagine Giochi in React: Corretto il problema per cui i tooltip dell’hub non comparivano più by
@wescopelandin #3870 - Pagine Giochi in React: Non utilizzare lo stile di rendering pixelato per le box art by
@wescopelandin #3872 - Subscriptions: Spostata la logica di detrazione degli abbonamenti all’interno del servizio by
@Jamirasin #3859 - Subscriptions: Aggiunte funzioni per interrogare gli abbonamenti dei giocatori by
@Jamirasin #3874
Download: Source code RAWeb 2025.09.09
Fonte: x.com


![[Scena Switch] Rilasciato Tetris Overlay v0.4.6](https://www.biteyourconsole.net/wp-content/uploads/Tetris-238x178.webp)


![[Scena Switch] Rilasciato Tetris Overlay v0.4.6](https://www.biteyourconsole.net/wp-content/uploads/Tetris-100x75.webp)
![[Scena PS4] Rilasciato Puppy Linux per PS4 – Leon Pup Beta v1](https://www.biteyourconsole.net/wp-content/uploads/PuppyLinux-100x75.webp)
![[Scena PS Vita] Rilasciato Noboru v0.91 [aggiornato x1]](https://www.biteyourconsole.net/wp-content/uploads/Noboru4-2.jpg)
![[Scena Ps3] Rilasciato Control Fan Utility v2.01a ISO Version](https://www.biteyourconsole.net/wp-content/uploads/fan1.jpeg)