Messaging, elevated.
Downloads and official updates · Source
Zgram for Android is an independent community modification of Telegram for Android. It keeps the Telegram protocol and mobile experience while bringing the Zgram identity and celestial obsidian-and-gold design to Android.
Based on Telegram 12.10.1 (7038) with the Zgram features below.
- Custom Zyzz angel-wing launcher, adaptive, monochrome, account, and notification icons
- ZGRAM wordmark in onboarding, the chat list, and stories
- Built-in Zgram dark theme with gold accents and the celestial wing wallpaper
- Zgram is the first-run theme while existing saved theme choices are preserved
- Official updates shortcut in Settings linking to @zgram_io
- Power User Center with live bookmark, archive, and encrypted-storage totals
- Searchable command palette for navigation, interface settings, local data, and current-chat actions
- Local Bookmarks that keep searchable message snapshots after edits or source deletion
- Encrypted Local Archive with per-chat opt-in retention, edit history, deletion markers, filters, and JSON/HTML export
- Expanded Zgram Chat Tools for chat appearance, mute controls, media filters, archive controls, bookmarks, and commands
- Separate, copyable user ID and photo data-center information in profiles, with a Power User visibility toggle
- Send a local audio file as a voice message from the Audio attachment picker
- Direct Block/Unblock and Report actions for regular users in the chat menu, with confirmation before blocking
- Automated GitHub Debug APK builds with downloadable artifacts
- All standard Telegram Android chat, group, channel, call, media, and privacy features
User profiles show the raw numeric ID without separators and the photo storage DC when Telegram supplies it. Known DCs display Miami, US; Amsterdam, NL; or Singapore, SG. This is server information, not the user's physical location. Tap the row to copy the ID, or hide it in Power User Center.
To send a file as a voice message, open Attach > Audio, enable Send audio as a voice message, then select one local audio file. Normal audio sending is unchanged. Voice privacy restrictions, chat permissions, slow mode, and paid-message confirmation remain enforced. This option is not available for secret chats, ephemeral messages, media editing, story music, or poll attachments.
Local Bookmarks and the Encrypted Local Archive are Android-native Zgram features. Their per-account data file is encrypted with an Android Keystore key, stays on the device, and is never synced by Zgram. Archive capture is opt-in per chat with 7-day, 30-day, 1-year, or forever retention.
Only eligible messages observed by this device while archiving is enabled are captured. Secret chats, self-destructing and view-once media, protected or paid content, and service messages are excluded. Exports are decrypted only when you explicitly create and share a JSON or HTML file.
You need Android Studio 2025.1.4, Android SDK 36, Build Tools 36.0.0, Android NDK 27.2.12479018, CMake 3.22.1, and Java 17.
-
Clone with submodules:
git clone --recursive https://github.com/re4/zgram-android.git cd zgram-androidWhen updating an existing checkout, refresh the native dependencies too:
git submodule sync --recursive git submodule update --init --recursive
-
Configure your Telegram API credentials in
TMessagesProj/src/main/java/org/telegram/messenger/BuildVars.java. -
Build the development APK:
./gradlew :TMessagesProj_App:assembleAfatDebug
The APK is generated under TMessagesProj_App/build/outputs/apk/afat/debug/.
Before publishing, replace the bundled sample signing and service configuration with your own keystore, Firebase configuration, package identity, API ID, and API hash.
Every source push and pull request runs the Android Debug workflow. You can
also start it manually from GitHub Actions. Successful runs upload a
Zgram Android Debug APK artifact.
Zgram is unofficial and is not affiliated with Telegram Messenger Inc. The source remains subject to the licenses included in this repository.
