Version | |
---|---|
jdk | 21 |
Version | |
---|---|
Compose Multiplatform | 1.6.11 |
TDLib | 1.8.37 |
MacOS (x64 and M)
Linux (x64 and arm64)
Windows (x64)
- Download source code:
git clone https://github.com/p-vorobyev/telegram-desktop-compose-multiplatform.git
- Specify environment variables(
GIT_HUB_LOGIN
,GIT_HUB_TOKEN
) with your GitHub credentials or write them directly tobackend/build.gradle.kts
file. We need them to download some dependencies from GitHub packages.
repositories {
mavenCentral()
maven {
url = uri("https://maven.pkg.github.com/p-vorobyev/*")
credentials {
username = System.getenv("GIT_HUB_LOGIN")
password = System.getenv("GIT_HUB_TOKEN")
}
}
}
- Go to directory
backend/src/main/resources
and fill in theapplication.properties
with your Telegram credentials:
spring.telegram.client.api-id=
spring.telegram.client.api-hash=
spring.telegram.client.phone=<international_format_phonenumber>
spring.telegram.client.database-encryption-key=
spring.telegram.client.database-directory=<directory_for_telegram_data>
- Run the build script in the project root directory:
./build.sh
When the script completes, you will see the destination path of the binaries in the console output.
> Task :desktop:createDistributable
The distribution is written to /Users/vorobyev/Documents/projects/telegram-desktop-client/desktop/build/compose/binaries/main/app
At the first start you need to authorize the app with code from Telegram(will be sent to official app). If you have activated 2-Step verification you will also need to confirm it. After this, the chats will load for a while and become available. Example with filter some chats: Currently only some basic message types (text and photo) are available without additional features (reactions, delivery status, reply info, etc.). Some features will be implemented in the future as possible.