Bauxite

Bauxite is a robust, low-level connector for the Discord API.

What is Bauxite for?

Bauxite is made for two main purposes:

  • Creating higher-level API wrappers and frameworks
  • Creating things that need high levels of control and low-level access to the Discord API

Examples

Basic HTTP Example

from asyncio import run

from bauxite import HTTPClient, Route


async def main() -> None:
    client = HTTPClient("your_bot_token")

    await client.request(
        Route("POST", "/channels/{channel_id}/messages", channel_id=1234),
        json={
            "content": "Hello, world!",
        },
    )

    await client.close()

run(main())

Basic Gateway Example

from asyncio import run

from bauxite import GatewayClient, HTTPClient


async def callback(shard, direction, data) -> None:
    print(f"{shard} [{direction}]: {data['op'] or data['t']}")

async def main() -> None:
    client = HTTPClient("your_bot_token")
    gateway = GatewayClient(client, 32767, callbacks=[callback])

    await gateway.spawn_shards()

run(main())
GitHub - vcokltfre/bauxite at pythonawesome.com
A robust, low-level connector for the Discord API. Contribute to vcokltfre/bauxite development by creating an account on GitHub.