Serenity is a Rust library for building Discord bots and integrations through Discord’s official API. It wraps Discord’s HTTP and gateway systems so developers can handle messages, events, commands, cache data, and bot sessions from Rust. The library provides a client builder, token validation, event dispatching, context objects, and handlers for reacting to Discord activity. It also manages gateway shards transparently, which reduces the complexity of scaling bot connections. Serenity includes examples for common bot behaviors and can be paired with related Rust projects such as poise for command frameworks and songbird for voice. It is best suited for developers who want Discord API access with Rust’s safety, performance, and async ecosystem.
Features
- Rust Discord API wrapper
- HTTP and gateway support
- Async event handling
- Automatic shard management
- Cache-backed data access
- Examples and ecosystem integrations