Metadata-Version: 2.1
Name: Pyrubrum
Version: 0.1a1.dev5
Summary: An intuitive framework for creating Telegram bots
Home-page: https://github.com/hearot/pyrubrum
Author: Hearot
Author-email: gabriel@hearot.it
License: GPLv3
Project-URL: Tracker, https://github.com/hearot/pyrubrum/issues
Project-URL: Source, https://github.com/hearot/pyrubrum
Keywords: bot bots chat messenger mtproto pyrogram python telegram
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
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
Classifier: Typing :: Typed
Requires-Python: >=3.6.*
Description-Content-Type: text/markdown
Requires-Dist: pyrogram
Requires-Dist: dataclasses ; python_version < "3.7"
Provides-Extra: fast
Requires-Dist: orjson ; extra == 'fast'
Requires-Dist: tgcrypto ; extra == 'fast'

<p align="center">
    <a href="https://github.com/hearot/pyrubrum">
        <img src="https://i.imgur.com/gfkh9bR.png" alt="Pyrubrum" width="600"/>
    </a>
    <br>
    <b>An intuitive framework for creating Telegram bots.</b>
    <br>
    <i>Create your own bot in less than 100 lines!</i>
    <br>
    <br>
    <a href="https://t.me/pyrubrum">
        <img src="https://img.shields.io/badge/Channel-@pyrubrum-red.svg" alt="Channel: @pyrubrum"/>
    </a>
    •
    <a href="https://t.me/hearot">
        <img src="https://img.shields.io/badge/Developer-@hearot-blue.svg" alt="Developer: @hearot"/>
    </a>
    •
    <a href="https://github.com/hearot/pyrubrum/blob/master/LICENSE">
        <img src="https://img.shields.io/badge/License-GPLv3-green.svg" alt="License: GPLv3"/>
    </a>
</p>

## Pyrubrum

```python
from pyrogram import Client
from pyrubrum import Handler, Menu, transform

bot = Client(...)

handler = Handler(transform(
    {
        Menu("Main", "main", "Hello!"): {
            Menu("About me", "about_me", "I'm just a bot!"),
            Menu("Thoughts", "thoughts",
                 "I'm a bot, I cannot think properly...")
        }
    }
))

handler.setup(bot)
bot.run()
```

**Pyrubrum** ([*/ˈpaɪɹˈuːbɹəm/*](http://ipa-reader.xyz/?text=%CB%88pa%C9%AA%C9%B9%CB%88u%CB%90b%C9%B9%C9%99m&voice=Russell)) is a versatile, charming framework for creating [Telegram bots](https://core.telegram.org/bots), jointly with [Pyrogram](https://github.com/pyrogram/pyrogram).

### Examples

In order to make use of the proposed examples, you need to create your own environment file by renaming [sample.env](./examples/sample.env) into `.env` and editing all the necessary variables.

   - [Calendar](./examples/calendar_bot.py) - Get what day of the week a day is by simply choosing a year, a month and a day while discovering the potential of Pyrubrum page menus.
   - [Hitchhiker](./examples/hitchhiker_bot.py) - Come to know how media are handled with Pyrubrum and...[get an existential question answered](https://en.wikipedia.org/wiki/Phrases_from_The_Hitchhiker%27s_Guide_to_the_Galaxy#The_Answer_to_the_Ultimate_Question_of_Life,_the_Universe,_and_Everything_is_42).
   - [Sample](./examples/sample_bot.py) - Interact with inline menus while understanding how Pyrubrum works.

### Changelog

> *See [CHANGELOG.md](./CHANGELOG.md).*
> *Find new features in [FEATURES.md](./FEATURES.md).*

### Commit messages

> *See [Conventional Commits](https://www.conventionalcommits.org).*

### Versioning

> *See [PEP 440](https://www.python.org/dev/peps/pep-0440/).*

### Thanks

   - [veggero/tytg](https://github.com/veggero/tytg) for giving me the idea of developing a simple framework with which you can code a folder-like bot.
   - [IlhomBahoraliev/pyromenu](https://github.com/IlhomBahoraliev/pyromenu) for letting me understand that an object-oriented library would make the difference in developing this project.

### Branding

> *See [hearot/pyrubrum-assets](https://github.com/hearot/pyrubrum-assets).*

### Copyright & License

- Copyright (C) 2020 [Hearot](https://github.com/hearot).
- Licensed under the terms of the [GNU General Public License v3 (GPLv3)](./LICENSE).


