Un gruppo di appassionati indipendenti ha pubblicato il progetto Monogram, un nuovo client open source per il messenger Telegram sulla piattaforma mobile Android. Il progetto è scritto in Kotlin utilizzando il framework UI dichiarativo Jetpack Compose. Il codice è aperto sotto licenza GPLv3 (il progetto ha anche un proprio canale Telegram).
Il principale motivo per la creazione di un'app alternativa è stato dichiarato la necessità di garantire la trasparenza nello sviluppo e di risolvere i problemi accumulati dell'app originale. Gli autori del progetto notano che la base di codice dell'app ufficiale Telegram per Android si è nel tempo trasformata in un monolite complicato, rendendo praticamente impossibile per sviluppatori esterni comprendere il codice. Inoltre, è stata criticata l'attuale pratica degli sviluppatori del messenger, caratterizzata da un rallentamento sistematico nella pubblicazione dei codici sorgente, dove le modifiche nei repository aperti appaiono con un notevole ritardo rispetto al rilascio delle versioni binarie nei cataloghi delle applicazioni.
La critica diffusa al recente redesign della versione ufficiale per Android ha agito da catalizzatore per lo sviluppo di un progetto indipendente, in cui gli sviluppatori hanno iniziato a implementare in modo aggressivo elementi visivi tipici di iOS, come effetti di sfocatura dello sfondo e trasparenze in stile "Liquid Glass", ignorando nel contempo le linee guida di design per Android.
La libreria ufficiale TDLib (Telegram Database Library) gestisce l'interazione di rete, il protocollo MTProto e la crittografia end-to-end nel nuovo client, con il suo nucleo sviluppato in C++. Lo sviluppo della parte client si concentra sull'utilizzo di strumenti moderni della piattaforma, alte prestazioni e minimizzazione del consumo di risorse di sistema.
Tra le caratteristiche chiave del progetto si evidenziano:
- Interfaccia utente progettata in rigorosa conformità con il concetto di Material Design 3, che è lo standard per la visualizzazione nativa di Android, unita all'utilizzo di componenti integrati della piattaforma per la gestione dei file multimediali, consentendo di ottenere un'elevata fluidità e di ridurre notevolmente il consumo di risorse del telefono.
- Integrazione del free mapping stack MapLibre per il rendering dei dati geospaziali e la gestione delle posizioni.
- Supporto per le misure di sicurezza di base delle sessioni, comprese le opzioni per bloccare l'app utilizzando la biometria di sistema.
Fonte: opennet.ru
