Skip to content

Latest commit

 

History

History
57 lines (43 loc) · 1.51 KB

README.md

File metadata and controls

57 lines (43 loc) · 1.51 KB

Ruvolt

ruvolt is an API library to interact with Revolt Chat APIs and create bots.

Getting started

Installation

To use ruvolt we need ruvolt, async-trait and an asynchronous runtime, let's use the tokio. Add this to your Cargo.toml dependencies section and run cargo build to compile dependencies.

ruvolt = "*"
async-trait = "*"
tokio = { version = "*", features = ["macros", "rt-multi-thread"] }

Example - Ping/Pong bot

use {
    async_trait::async_trait,
    ruvolt::{models::Message, Client, Context, EventHandler, Result},
    std::env,
};

struct Handler;

#[async_trait]
impl EventHandler for Handler {
    async fn message(&self, cx: Context, msg: Message) {
        let content = msg.content.to_string();

        if content == "!ping" {
            msg.reply(&cx, "Pong!", true).await.ok();
        }
    }
}

#[tokio::main]
async fn main() -> Result {
    let token = env::var("TOKEN").unwrap();
    let mut client = Client::new(Handler, token).await?;

    client.listen().await
}

Documentation

Rust docs

A documentation generated by rustdoc, you can find here.

Examples

License

This project is under the MIT license.