Skip to main content
Archived

This project has been archived by its maintainers, and is no longer receiving any updates.

A simple, flexible API wrapper for Revolt.

Key Features

  • Built on asyncio.

  • Sane rate limit handling that prevents 429s

  • Fast. Really faster than Revolt.py and voltage.

  • Low memory usage.

  • Customizable architecture. Build object parser in Rust to achieve high speeds.

  • Focuses on supporting both, bot and user accounts.

Installing

Python 3.10 or higher is required

To install the library, you can just run the following command:

# Linux/macOS
python3 -m pip install -U pyvolt-re

# Windows
py -3 -m pip install -U pyvolt-re

Or to install alpha master (with all new features):

# Linux/macOS
python3 -m pip install -U git+https://github.com/MCausc78/pyvolt@master

# Windows
py -3 -m pip install -U git+https://github.com/MCausc78/pyvolt@master

Quick Example

from pyvolt import Client

class MyClient(Client):
    async def on_ready(self, _, /):
        print('Logged on as', self.me)

    async def on_message(self, message, /):
        # don't respond to ourselves
        if message.author_id == self.me.id:
            return

        if message.content == 'ping':
            await message.channel.send('pong')

# You can pass `bot=False` to run as user account
client = MyClient(token='token')
client.run()

Bot Example

from pyvolt.ext import commands

# Pass `self_bot=True` to make your bot listen only to you
bot = commands.Bot(command_prefix='!')

@bot.command()
async def ping(ctx):
    await ctx.send('Pong!')

token = 'token'

# That's also allowed, just like in `discord.py`. Pass `bot=False` keyword argument if you want to run as user account.
bot.run(token)

Why Not

  • pyrevolt - Doesn’t follow PEP8 and does a ton of requests on startup (not member list).

  • voltage - Slow and simply copypasta from revolt.py.

  • revolt.py - Slow and unable to disable member list loading.

  • luster - Unmaintained library.

Metadata

Release files for pyvolt-re 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyvolt-re 1.1.0
File Size Uploaded
pyvolt_re-1.1.0.tar.gz 315.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyvolt-re 1.1.0
File Interpreter ABI Platform
pyvolt_re-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 672.6 kB

Release files / pyvolt_re-1.1.0.tar.gz

Download URL pyvolt_re-1.1.0.tar.gz
Size 315.3 kB
Tags Source
SHA-256 checksum
How to use checksums
293e42e7272fb939fb9effc7715ee25d441af4e96e66961cc308628bff46751b
BLAKE2b-256 checksum
How to use checksums
f06a67c7aa049bb41aca905fcbdb0db95ec65e98855dc0d0c0e92bbfc5eee5e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release files / pyvolt_re-1.1.0-py3-none-any.whl

Download URL pyvolt_re-1.1.0-py3-none-any.whl
Size 357.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
02adc09a973c496d200d4291ef240507a39a323f940921a9c8fb1da1e22ecabc
BLAKE2b-256 checksum
How to use checksums
ac3f02903b6330ec38205f11de1dc7adb4d267e7f2291aa6d8ed3fe218462678
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page