TDLib is a cross-platform library for building Telegram clients that can be used from almost any programming language.
The library handles the complexity of implementing a Telegram client by managing network communication, encryption, and local data storage. It provides a fully asynchronous API where requests do not block each other, with responses delivered when available. The tool guarantees that all updates are delivered in the correct order and remains stable on slow or unreliable connections. All local data is encrypted using a user-provided encryption key.
Developers should choose this library if they need to build Telegram client applications across multiple platforms. It suits projects targeting Android, iOS, Windows, macOS, Linux, and numerous other systems including WebAssembly and embedded platforms. The library offers native bindings for Java through JNI and for .NET through C++/CLI and C++/CX, while any language capable of calling C functions can use it via JSON-based interfaces. The tool is well-documented with all API methods and public interfaces fully described, and it has demonstrated high performance, with each instance handling more than 40000 active bots simultaneously in the Telegram Bot API.
The project maintains active development with regular updates to support new platforms and maintain compatibility. The codebase includes comprehensive examples and a build instructions generator to assist developers in getting started. The maintainers provide detailed API documentation in both machine-readable and HTML formats, reflecting attention to developer experience. The project's scope extends across numerous operating systems and programming languages, indicating sustained effort to keep the library current across the ecosystem.