Група независими ентусиасти публикува проект Monogram, развиващ нов клиент на мессенджера Telegram за мобилната платформа Android. Проектът е написан на езика Kotlin, използвайки декларативния UI-фреймуърк Jetpack Compose. Кодът е отворен под лицензия GPLv3 (проектът разполага и със собствен Telegram-канал).
Основният мотив за създаването на алтернативното приложение е необходимостта от осигуряване на прозрачност в разработката и решаване на натрупаните проблеми с оригиналния клиент. Авторите на проекта отбелязват, че кодовата база на официалното приложение Telegram за Android с времето се е превърнала в прекалено усложнен монолит, в чийто заплетен код е станало практически невъзможно на външни разработчици да се ориентират. Освен това е критикувана сегашната практика на създателите на мессенджера, изразяваща се в системно забавяне на публикуването на изходните текстове, при която промените в отворените репозитории се появяват със значителна забавеност след излизането на бинарните сборки в каталозите на приложенията.
Допълнителен катализатор за развитието на независимия проект стана многобройната критика на последния редизайн на официалната Android-версия, при който разработчиците започнаха агресивно да внедряват визуални елементи, характерни за iOS (като ефекти на размазване на фона и полупрозрачност в стил „Liquid Glass“), игнорирайки препоръките за дизайн на Android.
За мрежовото взаимодействие, работа с протокола MTProto и крайно криптиране в новия клиент отговаря официално предоставената библиотека TDLib (Telegram Database Library), чиято сърцевина е реализирана на езика C++. Самата разработка на клиентската част се извършва с акцент върху използването на съвременни вградени инструменти на платформата, висока производителност и минимизиране на консумацията на системни ресурси.
Сред ключовите характеристики на проекта се отличават:
- Потребителският интерфейс, построен в строга съответствие с концепцията Material Design 3, представляваща стандарт за нативно визуално оформление на Android, в съчетание с използването на вградени компоненти на платформата за работа с медийни файлове, което позволява постигането на висока плавност и съществено намаляване на потреблението на ресурси на телефона.
- Интеграцията на свободен картографски стек MapLibre за визуализация на геоданни и работа с местоположения.
- Поддръжка на основни средства за защита на сесиите, включително възможност за блокиране на приложението с помощта на системна биометрия.
Източник: opennet.ru
