Skip to content

dazewell/NagramX

 
 

Repository files navigation

Nagram X

Crowdin
A variant of Nagram with additional features.

This is a personal fork by @dazewell with a few extras on top of NagramX:

  • Per-chat time zones: set a time zone for any personal chat or group through the profile edit view. The chat header and contacts list show the peer's current local time as a clock pill. Tap the pill to get a worldtimebuddy-style side-by-side time converter in a bottom sheet view. Each message also shows both your local time and the peer's.

  • Quick schedule button: the calendar icon stays visible in the input bar while you type. One tap to schedule instead of long-pressing Send. Toggle it off in settings if you prefer the default.

  • Physical keyboard hotkeys: matches Telegram Desktop bindings for BT/USB keyboards. Does nothing on software keyboards. Can be disabled in settings.

    Shortcut Action
    Esc Cancel reply/edit, close search, go back
    Up (empty input) Edit last sent message
    Ctrl+F Search in current chat / chat list
    Ctrl+W Close current chat
    Ctrl+PgDn / Ctrl+PgUp Next / previous chat
    Ctrl+Alt+Home / End First / last chat
    Ctrl+Shift+↓ / Next / previous folder
    Ctrl+0 Saved Messages
    Ctrl+1..8 Pinned chat 1–8
    Ctrl+9 Archive
    Ctrl+J Contacts
    Ctrl+L Lock app (when passcode is set)
    Ctrl+M Minimize app
    Ctrl+R Mark current chat as read
    Alt+Enter Schedule message (Enter confirms the picker)
    Alt+↑ / Step reply target older / newer; past newest clears
    Alt+; Emoji search: type to filter, arrows to pick, Enter inserts, Ctrl+Enter sends, Esc closes
    Ctrl+B / I / U / K Bold / italic / underline / link
    Ctrl+Shift+X / M / P / N Strikethrough / monospace / spoiler / plain
    Ctrl+Shift+. Quote (works at cursor without a selection too)

Download

Latest versions are available through:

Verify APK

Official APKs use the following Android signing certificate:

  • Package name: nekox.messenger / nekox.messengerx (base version)
  • SHA-256: 0D:51:91:56:E8:0C:91:8C:28:C4:80:BF:D1:3F:31:6A:3B:3B:F7:22:DB:53:2F:AB:74:66:0E:C8:E5:C5:06:A1

Compilation Guide

  1. Obtain API credentials (TELEGRAM_APP_ID and TELEGRAM_APP_HASH) from Telegram Developer Portal. Create local.properties in the project root with:

    TELEGRAM_APP_ID=<your_telegram_app_id>
    TELEGRAM_APP_HASH=<your_telegram_app_hash>
  2. For APK signing: Replace release.keystore with your keystore and add signing configuration to local.properties:

    KEYSTORE_PASS=<your_keystore_password>
    ALIAS_NAME=<your_alias_name>
    ALIAS_PASS=<your_alias_password>
  3. For FCM support: Replace TMessagesProj/google-services.json with your own configuration file.

  4. Open the project in Android Studio to start building.

GitHub Actions Build

  1. Replace TMessagesProj/release.keystore with your keystore file.

  2. Configure local.properties with the following:

    KEYSTORE_PASS=<your_keystore_password>
    ALIAS_NAME=<your_alias_name>
    ALIAS_PASS=<your_alias_password>
    TELEGRAM_APP_ID=<your_telegram_app_id>
    TELEGRAM_APP_HASH=<your_telegram_app_hash>

    Base64 encode the contents of this file.

  3. Configure GitHub Action secrets:

    • LOCAL_PROPERTIES: Base64-encoded content from step 2
    • HELPER_BOT_TOKEN: Telegram bot token from @Botfather (e.g., 1111:abcd)
    • HELPER_BOT_TARGET: Primary Telegram chat ID (e.g., 777000)
    • HELPER_BOT_CANARY_TARGET: Chat ID for test builds and metadata (can match HELPER_BOT_TARGET)
  4. Trigger the Release Build workflow.

Acknowledgments

About

A variant of Nagram with additional features.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 45.1%
  • C++ 32.4%
  • C 14.2%
  • Assembly 4.5%
  • Go 1.2%
  • Perl 1.1%
  • Other 1.5%