Metadata-Version: 2.5
Name: tjgram
Version: 2.2.27
Summary: Elegant, modern and asynchronous Telegram MTProto API framework in Python for users and bots
Project-URL: Homepage, https://github.com/tj-bots/tjgram
Project-URL: Source, https://github.com/tj-bots/tjgram
Project-URL: Issues, https://github.com/tj-bots/tjgram/issues
Author-email: Dan <dan@pyrogram.org>
Maintainer: KurimuzonAkuma, tj-bots
License-Expression: LGPL-3.0-or-later
License-File: COPYING
License-File: COPYING.lesser
Keywords: api,chat,client,library,messenger,mtproto,python,telegram
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Communications
Classifier: Topic :: Communications :: Chat
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.8
Requires-Dist: pyaes<=1.6.1
Requires-Dist: python-socks[asyncio]<=2.8.1
Provides-Extra: dev
Requires-Dist: hatch<=1.17.0; extra == 'dev'
Requires-Dist: keyring<=25.7.0; extra == 'dev'
Requires-Dist: pre-commit<=4.6.2; extra == 'dev'
Requires-Dist: pytest-asyncio<=1.4.0; extra == 'dev'
Requires-Dist: pytest-cov<=7.1.0; extra == 'dev'
Requires-Dist: pytest-timeout<=2.4.0; extra == 'dev'
Requires-Dist: pytest<=9.1.1; extra == 'dev'
Requires-Dist: ruff<=0.16.3; extra == 'dev'
Requires-Dist: twine<=6.2.0; extra == 'dev'
Requires-Dist: ty<=0.0.78; extra == 'dev'
Provides-Extra: docs
Requires-Dist: pygments<=2.20.0; extra == 'docs'
Requires-Dist: shibuya<=2026.5.19; extra == 'docs'
Requires-Dist: sphinx-autobuild<=2025.8.25; extra == 'docs'
Requires-Dist: sphinx-copybutton<=0.5.2; extra == 'docs'
Requires-Dist: sphinx-design<=0.7.0; extra == 'docs'
Requires-Dist: sphinx-iconify<=0.3.0; extra == 'docs'
Requires-Dist: sphinx<=9.1.0; extra == 'docs'
Provides-Extra: fast
Requires-Dist: tgcrypto<=1.2.5; extra == 'fast'
Requires-Dist: uvloop<=0.22.1; (sys_platform == 'darwin' or sys_platform == 'linux') and extra == 'fast'
Provides-Extra: qrcode
Requires-Dist: qrcode<=8.2; extra == 'qrcode'
Description-Content-Type: text/markdown

<p align="center">
    <a href="https://github.com/tj-bots/tjgram">
        <b>tjgram</b>
    </a>
    <br>
    <b>Telegram MTProto API Framework for Python</b>
    <br/>
    <br/>
    <a href="https://pypi.python.org/pypi/tjgram">
        <img src="https://img.shields.io/pypi/v/tjgram.svg?logo=pypi&logoColor=white" alt="PyPI package version">
    </a>
    <a href="https://pypi.python.org/pypi/tjgram">
        <img src="https://img.shields.io/pypi/l/tjgram.svg" alt="License">
    </a>
    <a href="https://pypi.python.org/pypi/tjgram">
        <img src="https://img.shields.io/pypi/pyversions/tjgram.svg" alt="Python versions">
    </a>
</p>

## tjgram

> Elegant, modern and asynchronous Telegram MTProto API framework in Python for users and bots

tjgram is an actively maintained pyrogram fork for Python designed as a drop-in replacement for Pyrogram, tjgram provides support for the latest Telegram features including Gifts, Stories, Topics, Business Accounts, and more.

```python
from pyrogram import Client, filters

app = Client("my_account")


@app.on_message(filters.private)
async def hello(client, message):
    await message.reply("Hello from tjgram!")


app.run()
```

**tjgram** is a modern, elegant and asynchronous MTProto API framework. It enables you to easily interact with
the main Telegram API through a user account (custom client) or a bot identity (bot API alternative) using Python.

### Key Features

- **Ready**: Install tjgram with pip and start building your applications right away.
- **Easy**: Makes the Telegram API simple and intuitive, while still allowing advanced usages.
- **Elegant**: Low-level details are abstracted and re-presented in a more convenient way.
- **Fast**: Boosted up by [TgCrypto](https://github.com/pyrogram/tgcrypto), a high-performance cryptography library written in C.
- **Type-hinted**: Types and methods are all type-hinted, enabling excellent editor support.
- **Async**: Fully asynchronous (also usable synchronously if wanted, for convenience).
- **Powerful**: Full access to Telegram's API to execute any official client action and more.

### Installing

Stable version

``` bash
pip install tjgram
```

Dev version

``` bash
pip install https://github.com/tj-bots/tjgram/archive/dev.zip --force-reinstall
```

Optional dependencies

``` bash
pip install tjgram[fast]     # TgCrypto and uvloop for better performance
pip install tjgram[qrcode]   # QR code login support
```

### Acknowledgements

tjgram is a fork of [Kurigram](https://github.com/KurimuzonAkuma/kurigram), itself a fork of [Pyrogram](https://github.com/pyrogram/pyrogram).
Credit for the vast majority of this codebase goes to their respective authors and maintainers.
