![Logo](https://raw.githubusercontent.com/polyphony-chat/design/main/branding/polyphony-chorus-round-8bit.png)
A rust library for interacting with (multiple) Spacebar-compatible APIs and Gateways (at the same time).
Explore the docs »
Report Bug
·
Request Feature
·
Join Discord
Chorus is a Rust library that allows developers to interact with multiple Spacebar-compatible APIs and Gateways simultaneously. The library provides a simple and efficient way to communicate with these services, making it easier for developers to build applications that rely on them. Chorus is open-source and welcomes contributions from the community.
If you would like to contribute, please feel free to open an Issue with the idea you have, or a Pull Request. Please keep our contribution guidelines in mind. Your contribution might not be accepted, if it violates these guidelines or our Code of Conduct.
Progress Tracker/Roadmap
- Rate Limiter (hint: couldn't be fully tested due to an Issue with the Spacebar Server)
- Login (the conventional way)
- 2FA
- Registration
- Sending messages
- Events (Message, User, Channel, etc.)
- Channel creation
- Channel deletion
- Channel management (name, description, icon, etc.)
- Join and Leave Guilds
- Start DMs
- Group DM creation, deletion and member management
- Deleting messages
- Message threads
- Reactions
- Message Search
- Message history
- Emoji
- Stickers
- Forum channels
- User profile customization
- Gettings users and user profiles
- Friend requests
- Blocking users
- User presence (online, offline, idle, etc.)
- User status (custom status, etc.)
- Account deletion
- Server discovery
- Server templates
- Role management (creation, deletion, modification)
- Permission management (assigning and revoking permissions)
- Channel-specific permissions
- Role-based access control
- Guild creation
- Guild deletion
- Guild settings (name, description, icon, etc.)
- Guild invites
- Channel moderation (slow mode, etc.)
- User sanctions (mute, kick, ban)
- Audit logs
- Sending rich content in messages (links, images, videos)
- Customizing embed appearance (title, description, color, fields)
- Webhook creation and management
- Handling incoming webhook events
- Comprehensive documentation
- Example usage and code snippets
- Tutorials and guides