rubpy


Namerubpy JSON
Version 7.1.13 PyPI version JSON
download
home_pagehttps://github.com/shayanheidari01/rubika
SummaryA powerful, fast and optimal library for making robots in Rubika with sync and async support.
upload_time2025-07-27 13:35:40
maintainerNone
docs_urlNone
authorShayan Heidari
requires_python~=3.7
licenseNone
keywords rubika rubpy chat bot robot asyncio
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
  <a href="https://github.com/shayanheidari01/rubika">
    <img src="https://raw.githubusercontent.com/shayanheidari01/rubika/master/icon.png" width="128" alt="Rubpy Logo" />
  </a>
  <br><br>
  <strong><font size="+2">Rubpy</font></strong><br>
  <em>Asynchronous & elegant Python framework for the Rubika API</em>
  <br><br>
  <a href="https://github.com/shayanheidari01/rubika">🏠 Homepage</a> •
  <a href="https://github.com/shayanheidari01/rubika/tree/master/docs">📘 Documentation</a> •
  <a href="https://pypi.org/project/rubpy/#history">📦 Releases</a> •
  <a href="https://t.me/rubikapy">🗞 News</a>
</p>

---

## 🌟 Rubpy

> **Modern. Elegant. Asynchronous.**  
> A clean Pythonic interface to interact with Rubika's API — for both **users** and **bots**.

---

### 🚀 Async Example
```python
from rubpy import BotClient
from rubpy.bot import filters

app = BotClient("bot_token")


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


app.run()
```

### 🚀 Async Example
```python
from rubpy import Client, filters
from rubpy.types import Update

bot = Client(name='rubpy')

@bot.on_message_updates(filters.text)
async def updates(update: Update):
    print(update)
    await update.reply('`hello` __from__ **rubpy**')
  

bot.run()
```

**Minimal Async:**
```python
from rubpy import Client
import asyncio

async def main():
    async with Client(name='rubpy') as bot:
        result = await bot.send_message('me', '`hello` __from__ **rubpy**')
        print(result)

asyncio.run(main())
```

---

### ⚡ Sync Example
```python
from rubpy import Client

bot = Client('rubpy')

@bot.on_message_updates()
def updates(message):
    message.reply('`hello` __from__ **rubpy**')

bot.run()
```

**Minimal Sync:**
```python
from rubpy import Client

with Client(name='rubpy') as client:
    result = client.send_message('me', '`hello` __from__ **rubpy**')
    print(result)
```

---

### ✨ Why Rubpy?

- 📦 **Ready** — Install with pip and start instantly
- 🧠 **Easy** — Clean, intuitive, and beginner-friendly
- 💅 **Elegant** — Beautifully abstracted low-level details
- 🚀 **Fast** — Powered by high-performance `pycryptodome`
- 🔁 **Async First** — Full async design, with sync support
- 💪 **Powerful** — Everything the official client can do — and more

---

### 📦 Installation

```bash
pip install -U rubpy
```

---

### 📣 Stay Connected

- [Telegram Channel](https://t.me/rubikapy)
- [Project Homepage](https://github.com/shayanheidari01/rubika)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/shayanheidari01/rubika",
    "name": "rubpy",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "~=3.7",
    "maintainer_email": null,
    "keywords": "rubika, rubpy, chat, bot, robot, asyncio",
    "author": "Shayan Heidari",
    "author_email": "contact@shayanheidari.info",
    "download_url": "https://files.pythonhosted.org/packages/36/93/8165c1e1939d523bfa4af9ad3890cd328d67328a2a251441abc13239370b/rubpy-7.1.13.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\r\n  <a href=\"https://github.com/shayanheidari01/rubika\">\r\n    <img src=\"https://raw.githubusercontent.com/shayanheidari01/rubika/master/icon.png\" width=\"128\" alt=\"Rubpy Logo\" />\r\n  </a>\r\n  <br><br>\r\n  <strong><font size=\"+2\">Rubpy</font></strong><br>\r\n  <em>Asynchronous & elegant Python framework for the Rubika API</em>\r\n  <br><br>\r\n  <a href=\"https://github.com/shayanheidari01/rubika\">\ud83c\udfe0 Homepage</a> \u2022\r\n  <a href=\"https://github.com/shayanheidari01/rubika/tree/master/docs\">\ud83d\udcd8 Documentation</a> \u2022\r\n  <a href=\"https://pypi.org/project/rubpy/#history\">\ud83d\udce6 Releases</a> \u2022\r\n  <a href=\"https://t.me/rubikapy\">\ud83d\uddde News</a>\r\n</p>\r\n\r\n---\r\n\r\n## \ud83c\udf1f Rubpy\r\n\r\n> **Modern. Elegant. Asynchronous.**  \r\n> A clean Pythonic interface to interact with Rubika's API \u2014 for both **users** and **bots**.\r\n\r\n---\r\n\r\n### \ud83d\ude80 Async Example\r\n```python\r\nfrom rubpy import BotClient\r\nfrom rubpy.bot import filters\r\n\r\napp = BotClient(\"bot_token\")\r\n\r\n\r\n@app.on_message(filters.private)\r\nasync def hello(client, message):\r\n    await message.reply(\"Hello from Rubpy!\")\r\n\r\n\r\napp.run()\r\n```\r\n\r\n### \ud83d\ude80 Async Example\r\n```python\r\nfrom rubpy import Client, filters\r\nfrom rubpy.types import Update\r\n\r\nbot = Client(name='rubpy')\r\n\r\n@bot.on_message_updates(filters.text)\r\nasync def updates(update: Update):\r\n    print(update)\r\n    await update.reply('`hello` __from__ **rubpy**')\r\n  \r\n\r\nbot.run()\r\n```\r\n\r\n**Minimal Async:**\r\n```python\r\nfrom rubpy import Client\r\nimport asyncio\r\n\r\nasync def main():\r\n    async with Client(name='rubpy') as bot:\r\n        result = await bot.send_message('me', '`hello` __from__ **rubpy**')\r\n        print(result)\r\n\r\nasyncio.run(main())\r\n```\r\n\r\n---\r\n\r\n### \u26a1 Sync Example\r\n```python\r\nfrom rubpy import Client\r\n\r\nbot = Client('rubpy')\r\n\r\n@bot.on_message_updates()\r\ndef updates(message):\r\n    message.reply('`hello` __from__ **rubpy**')\r\n\r\nbot.run()\r\n```\r\n\r\n**Minimal Sync:**\r\n```python\r\nfrom rubpy import Client\r\n\r\nwith Client(name='rubpy') as client:\r\n    result = client.send_message('me', '`hello` __from__ **rubpy**')\r\n    print(result)\r\n```\r\n\r\n---\r\n\r\n### \u2728 Why Rubpy?\r\n\r\n- \ud83d\udce6 **Ready** \u2014 Install with pip and start instantly\r\n- \ud83e\udde0 **Easy** \u2014 Clean, intuitive, and beginner-friendly\r\n- \ud83d\udc85 **Elegant** \u2014 Beautifully abstracted low-level details\r\n- \ud83d\ude80 **Fast** \u2014 Powered by high-performance `pycryptodome`\r\n- \ud83d\udd01 **Async First** \u2014 Full async design, with sync support\r\n- \ud83d\udcaa **Powerful** \u2014 Everything the official client can do \u2014 and more\r\n\r\n---\r\n\r\n### \ud83d\udce6 Installation\r\n\r\n```bash\r\npip install -U rubpy\r\n```\r\n\r\n---\r\n\r\n### \ud83d\udce3 Stay Connected\r\n\r\n- [Telegram Channel](https://t.me/rubikapy)\r\n- [Project Homepage](https://github.com/shayanheidari01/rubika)\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A powerful, fast and optimal library for making robots in Rubika with sync and async support.",
    "version": "7.1.13",
    "project_urls": {
        "Homepage": "https://github.com/shayanheidari01/rubika"
    },
    "split_keywords": [
        "rubika",
        " rubpy",
        " chat",
        " bot",
        " robot",
        " asyncio"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3699e462a0bedf1c2169be98153141d3ed95fd7bfd5848236e2719a9a7165cfb",
                "md5": "42c7747c3f9c944857ef0abefbf3100c",
                "sha256": "9c828909affff2b30957dc2fb86114e73184771ab1ec8fd25522ba76a37151c1"
            },
            "downloads": -1,
            "filename": "rubpy-7.1.13-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "42c7747c3f9c944857ef0abefbf3100c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "~=3.7",
            "size": 163177,
            "upload_time": "2025-07-27T13:35:38",
            "upload_time_iso_8601": "2025-07-27T13:35:38.991747Z",
            "url": "https://files.pythonhosted.org/packages/36/99/e462a0bedf1c2169be98153141d3ed95fd7bfd5848236e2719a9a7165cfb/rubpy-7.1.13-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "36938165c1e1939d523bfa4af9ad3890cd328d67328a2a251441abc13239370b",
                "md5": "6e8da1b5e8f5620e5e48f00276ac8c8d",
                "sha256": "b5517b6a70d5cc24ae3fb041be68bd68dd1662a58b46d919ded1316e76191c00"
            },
            "downloads": -1,
            "filename": "rubpy-7.1.13.tar.gz",
            "has_sig": false,
            "md5_digest": "6e8da1b5e8f5620e5e48f00276ac8c8d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "~=3.7",
            "size": 89285,
            "upload_time": "2025-07-27T13:35:40",
            "upload_time_iso_8601": "2025-07-27T13:35:40.429879Z",
            "url": "https://files.pythonhosted.org/packages/36/93/8165c1e1939d523bfa4af9ad3890cd328d67328a2a251441abc13239370b/rubpy-7.1.13.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-27 13:35:40",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "shayanheidari01",
    "github_project": "rubika",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "rubpy"
}
        
Elapsed time: 1.52596s