Convert Figma logo to code with AI

UnigramDev logoUnigram

Telegram for Windows

3,809
444
3,809
134

Top Related Projects

25,848

Telegram Desktop messaging app

Telegram-iOS

24,740

Telegram for Android source

Unofficial, FOSS-friendly fork of the original Telegram client for Android

1,757

Telegram Web K, GPL v3

Quick Overview

Unigram is an open-source Telegram client for Windows 10 and Windows 11. It offers a modern and feature-rich alternative to the official Telegram desktop app, with a focus on performance, design, and integration with Windows features.

Pros

  • Native UWP app with seamless integration into Windows 10/11 ecosystem
  • Enhanced performance and responsiveness compared to the official Telegram client
  • Regular updates with new features and improvements
  • Customizable interface with support for themes and accent colors

Cons

  • Limited to Windows 10 and 11 platforms
  • May lack some features available in the official Telegram client
  • Potential for sync issues or delays with official Telegram servers
  • Smaller user base compared to the official client, which may result in slower bug fixes or feature requests

Getting Started

To get started with Unigram:

  1. Visit the Microsoft Store on your Windows 10 or 11 device.
  2. Search for "Unigram" in the store.
  3. Click "Get" or "Install" to download and install the app.
  4. Once installed, launch Unigram and log in with your Telegram account.
  5. Customize the app settings and appearance to your liking.

Note: Unigram is not a code library, so there are no code examples or quick start instructions for developers. The app is designed for end-users to install and use directly on their Windows devices.

Competitor Comparisons

25,848

Telegram Desktop messaging app

Pros of tdesktop

  • Cross-platform support (Windows, macOS, Linux)
  • More mature and feature-rich codebase
  • Closer integration with Telegram's core functionality

Cons of tdesktop

  • Larger resource footprint
  • Less modern UI design compared to Unigram
  • Slower update cycle for new features

Code Comparison

tdesktop (C++)

void MainWindow::setupMain() {
    auto widget = new Widget(this);
    _main = widget;
    _body->setMainWidget(widget);
    updateControlsGeometry();
}

Unigram (C#)

private void SetupMain()
{
    var widget = new Widget();
    _main = widget;
    Body.SetMainWidget(widget);
    UpdateControlsGeometry();
}

Both repositories implement Telegram clients, but tdesktop is the official desktop client while Unigram is a third-party UWP client. tdesktop offers broader platform support and deeper integration with Telegram's features. However, Unigram provides a more modern UI design tailored for Windows 10 and later. The code comparison shows similar structure but different languages (C++ vs C#) and slight variations in naming conventions.

Telegram-iOS

Pros of Telegram-iOS

  • Native iOS development using Swift, providing better performance and integration with iOS features
  • Direct access to the latest Telegram features and updates
  • Larger development team and resources from Telegram

Cons of Telegram-iOS

  • Limited to iOS platform, not cross-platform like Unigram
  • Closed-source development model, less community involvement
  • Stricter App Store guidelines and review process

Code Comparison

Telegram-iOS (Swift):

class TGViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        setupUI()
    }
}

Unigram (C#):

public sealed partial class MainPage : Page
{
    public MainPage()
    {
        this.InitializeComponent();
    }
}

The code snippets show the basic structure of a view controller in Telegram-iOS using Swift, and a page in Unigram using C#. Telegram-iOS follows iOS-specific patterns, while Unigram uses the Universal Windows Platform (UWP) framework.

Unigram offers cross-platform compatibility for Windows devices, while Telegram-iOS provides a native iOS experience. The development approaches differ significantly due to the target platforms and programming languages used.

24,740

Telegram for Android source

Pros of Telegram

  • More mature and established project with a larger user base
  • Supports a wider range of platforms, including iOS and Android
  • Has a more extensive feature set due to its longer development history

Cons of Telegram

  • Less focus on Windows-specific optimizations and integrations
  • May have a steeper learning curve for new contributors due to its larger codebase
  • Potentially slower release cycle for new features specific to Windows users

Code Comparison

Telegram (Java):

public class TelegramApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        NativeLoader.initNativeLibs(ApplicationLoader.applicationContext);
    }
}

Unigram (C#):

public sealed partial class App : Application
{
    protected override void OnLaunched(LaunchActivatedEventArgs e)
    {
        TLContainer.Current.Resolve<ILifetimeService>().Start();
    }
}

Summary

Telegram is a more established and feature-rich project with broader platform support, while Unigram focuses specifically on Windows integration and optimization. Telegram's codebase is primarily in Java, whereas Unigram uses C# for better Windows integration. Unigram may offer a more tailored experience for Windows users, but Telegram provides a more comprehensive cross-platform solution.

Unofficial, FOSS-friendly fork of the original Telegram client for Android

Pros of Telegram-FOSS

  • Fully open-source, ensuring transparency and allowing community contributions
  • Available on F-Droid, making it easily accessible for privacy-conscious users
  • Removes proprietary dependencies, enhancing privacy and security

Cons of Telegram-FOSS

  • May lack some features present in the official Telegram app
  • Updates might be delayed compared to the main Telegram client
  • Limited platform availability (Android-only)

Code Comparison

Telegram-FOSS (Java):

public class TelegramApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        NativeLoader.initNativeLibs(ApplicationLoader.applicationContext);
    }
}

Unigram (C#):

public sealed partial class App : Application
{
    public App()
    {
        this.InitializeComponent();
        this.Suspending += OnSuspending;
    }
}

The code snippets show different approaches to application initialization, reflecting the distinct platforms and programming languages used by each project. Telegram-FOSS focuses on native library loading, while Unigram sets up event handling for application suspension.

1,757

Telegram Web K, GPL v3

Pros of tweb

  • Web-based implementation, accessible across platforms without installation
  • More frequent updates and active development
  • Supports a wider range of Telegram features

Cons of tweb

  • May have slower performance compared to native applications
  • Potentially less integrated with operating system features
  • Limited offline functionality

Code Comparison

tweb (JavaScript):

export function getHeavyAnimationPromise() {
  return new Promise((resolve) => {
    window.requestAnimationFrame(() => {
      window.requestAnimationFrame(() => {
        resolve();
      });
    });
  });
}

Unigram (C#):

public static Task<bool> WaitForApplicationIdleAsync()
{
    var tcs = new TaskCompletionSource<bool>();
    CoreApplication.MainView.CoreWindow.Dispatcher.RunIdleAsync(args => tcs.SetResult(true));
    return tcs.Task;
}

Both code snippets deal with animation and idle states, but tweb uses web-specific APIs while Unigram utilizes UWP-specific methods. tweb's approach is more lightweight and browser-compatible, while Unigram's implementation is tightly integrated with the Windows platform.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Unigram

Telegram for Windows

Microsoft Store · Direct Download
Insiders Group


Contributing

For reporting bugs or making feature requests/suggestions, please go to https://bugs.telegram.org/.

For feature requests, make sure to have read our contributing guidelines and build instructions.

Changelog

Changelogs are provided both in Unigram News channel and in the Releases section of our GitHub project.

Screenshots

1 2

Beta versions

If you want to have access to new features and bug fixes sooner, you can try our beta versions. In order to install them, download the latest .msixbundle file from this channel. Remember to follow carefully the instructions in the first message.

Translations

Unigram has 28 built-in languages and has access to unlimited packs using Telegram translations platform. If you are wishing to improve or complete the current translations you can do it here. You can also work on the translation of a missing language from there.

Shortcuts

We have a list of shortcuts to ease the use with a keyboard. An up-to-date list can be found here.

Windows 10 N

In order to be able to use Unigram in Windows 10 N, you will need Media Feature pack. To install it properly, go to Settings > Apps and Features > Add a feature. At this point, select Media Feature pack, install it and reboot.

Privacy policy

In order to guarantee a great user experience, Unigram uses some third party services:

  • Microsoft Bing Maps
    Used to generate map previews when receiving and sharing locations.
  • Microsoft AppCenter
    Used to collect anonymous crash data and usage statistics, fundamental to monitor app health and to fix issues.
    Anonymised data is stored for 28 days.

Additionally to this, Telegram privacy policy applies.