FLUTTER ECOSYSTEM

i-Naji/tdlib

Flutter Plugin for TDLib (Telegram Database Library)

tdlib project cover
Stars
129
Forks
38
Last push (UTC)
Aug 13, 2023
Project status
Active
Naji GitHub avatar
GITHUB User

Naji ↗

A Marine Eng. ;)

LanguagesDartJavaScriptC++CMakeHTMLCObjective-CSwiftJava

Technical topics

Packages published by this repository

Dependencies used

Dependency list 6 items
  • flutter{"sdk":"flutter"}
  • flutter_web_plugins{"sdk":"flutter"}
  • ffi^2.1.0
  • js^0.6.7
  • flutter_testDevelopment{"sdk":"flutter"}
  • flutter_lintsDevelopment^2.0.2

Original README

English project snapshot. Visit GitHub for the latest content.

Expand / collapse project README

TDLib

Flutter Plugin for TDLib (Telegram Database Library) v1.8.15

Telegram Tdlib is a complete library for creating telegram clients, it also has a simple tdjson ready-to-use library to ease the integration with different programming languages and platforms.
This plugin is a complete tdlib-tdjson binding package to help you create your own Telegram clients.

See the example directory for the complete sample app.

Installation

Install the plugin by running the following command from the project root:

flutter pub add tdlib

Initialization

This plugin contains only Android tdlib-tdjson library. In case of other platforms usage you need to manually put the tdjson library in your project

  • for Windows:
  • for IOS and macOS support:
  • for web:
    • Copy all files in data/web-package to web folder in your project.
    • Point tdlib.js file in index.html:
      <!--add this between the <body> tags -->
      <script src="/tdlib.js" type="application/javascript"></script>
      

To initialize tdlib plugin, call the initialize method on the TdPlugin class.

Since this is an asynchronous operation, the main function can be modified to ensure initialization is complete before running the application.

The method accepts LIBTDJSON_PATH for windows platform or LIBTDJSON_NAME for IOS & macOS.

Import tdlib plugin:

import 'package:tdlib/tdlib.dart';

Next, within the main function, initialize TdPlugin:

// lib/main.dart

void main() async {
  await TdPlugin.initialize();
  runApp(MyApp());
}

Usage

Getting started with TDLib