Candy Browser porta su Android le estensioni Firefox e una sincronizzazione dei tab

  • Categoria dell'articolo:Android
  • Articolo pubblicato:
candy-browser android

Candy Browser è un progetto open source dedicato ad Android che cerca di offrire un’esperienza di navigazione differente rispetto ai browser tradizionali. Il progetto utilizza GeckoView come motore predefinito e permette di eseguire direttamente nell’app le estensioni Firefox firmate da Mozilla.

L’approccio di Candy Browser è fortemente orientato all’utilizzo tramite gesture. Le schede possono essere gestite direttamente dalla barra degli indirizzi, mentre lo swipe permette di accedere alla panoramica visuale delle pagine aperte. L’interfaccia utilizza inoltre animazioni, feedback aptico e diversi sistemi di visualizzazione delle schede.

Uno degli aspetti più interessanti riguarda la possibilità di scegliere il motore utilizzato dal browser. Su Android Candy può infatti funzionare con GeckoView oppure con Android System WebView. La scelta viene effettuata dalle impostazioni del browser e permette di adattare il comportamento dell’app alle proprie esigenze.

Con GeckoView, Candy Browser può utilizzare estensioni Firefox compatibili. Una nuova configurazione del profilo include già uBlock Origin e I still don’t care about cookies, mentre altre estensioni compatibili possono essere installate e gestite direttamente dalle impostazioni.

La gestione delle estensioni non è limitata alla semplice installazione. Candy mantiene all’interno della propria interfaccia le azioni delle estensioni, i popup, le opzioni, i permessi, gli aggiornamenti e i controlli per abilitarle o disabilitarle.

Anche la privacy occupa un ruolo importante nel progetto. Cronologia, preferiti, profili e strumenti di protezione rimangono localmente sul dispositivo, mentre le schede private utilizzano sessioni mantenute in memoria.

Tra le funzioni più interessanti troviamo:

  • Candy Recall per cercare localmente nei contenuti delle pagine visitate, senza indicizzazione delle schede private o utilizzo del cloud.
  • Link Peek per visualizzare rapidamente un collegamento senza creare immediatamente una nuova scheda o una voce nella cronologia.
  • Reader Studio per estrarre articoli, modificarne la tipografia, salvarli offline e utilizzare la sintesi vocale.
  • Candy Trails per creare percorsi di navigazione ramificati tra le pagine.
  • Candy Stacks per organizzare schede compatibili in gruppi.
  • Tab snoozing per rimandare la consultazione di una scheda a un momento successivo.
  • Site Capsules per creare collegamenti associati a un profilo direttamente dalla schermata principale.

L’interfaccia può inoltre essere personalizzata con modalità chiara, scura, AMOLED e colori ispirati a Material You. Sono disponibili diverse forme per gli elementi dell’interfaccia e controlli indipendenti per trasparenza e sfocatura della barra degli indirizzi.

Candy Sync collega Android, Firefox e Chromium con crittografia end-to-end

Candy Browser dedica una parte significativa del progetto alla sincronizzazione tra dispositivi. Candy Sync permette di trasformare i profili collegati di dispositivi Android, Chromium e Firefox in profili modificabili.

Non si tratta quindi soltanto di sincronizzare automaticamente un elenco di schede. Un dispositivo può visualizzare il contenuto del profilo desktop e intervenire direttamente sulle schede, aprendone di nuove, modificando la navigazione, fissandole, riordinandole oppure chiudendole.

candy-browser linux

Le modifiche vengono distribuite agli altri dispositivi collegati senza dover trasferire ogni volta l’intero stato del browser. Il sistema utilizza un outbox locale persistente e registra le modifiche in modo ordinato. Le notifiche WebSocket permettono di propagare rapidamente gli aggiornamenti, mentre le richieste REST consentono ai client di recuperare eventuali modifiche mancanti dopo una sospensione o una perdita della connessione.

Il punto centrale è però la sicurezza. Candy Sync utilizza un sistema di crittografia end-to-end nel quale il server non deve conoscere in chiaro i dati sincronizzati.

Il primo dispositivo genera una chiave casuale da 256 bit per lo spazio di sincronizzazione. Una passphrase immutabile viene utilizzata per derivare localmente una chiave di recupero tramite Argon2id, mentre HKDF-SHA-256 produce chiavi specifiche per gli scopi e per i dispositivi. I dati delle schede vengono quindi protetti tramite AES-256-GCM.

Ogni dispositivo genera inoltre localmente una propria chiave privata P-256. La passphrase, la chiave dello spazio di lavoro, le chiavi private, gli URL, i titoli, i nomi dei dispositivi e le icone non vengono trasmessi al server in formato leggibile.

Il server conserva invece i dati cifrati insieme alle informazioni di instradamento necessarie per permettere la sincronizzazione.

Questa impostazione rende Candy Sync particolarmente interessante per chi vuole sincronizzare le proprie schede senza affidarsi necessariamente a un servizio cloud gestito da terzi. Il server può essere eseguito autonomamente tramite Docker, configurando credenziali, URL pubblico e TLS.

Il progetto prevede inoltre ulteriori sviluppi, tra cui il supporto multiutente, la pubblicazione dell’estensione per Chrome e Firefox nei rispettivi store e la disponibilità di un’immagine server precompilata per semplificare il deployment.

Candy Browser punta quindi a unire un’esperienza Android moderna, il motore GeckoView, le estensioni Firefox e strumenti avanzati per la gestione delle schede con una sincronizzazione pensata fin dall’inizio per mantenere privati i contenuti degli utenti.

Lascia un commento