Yet another feature-rich Discord Bot Framework written in V (WIP)
Example
import discordv as vd
fn main() {
mut client := vd.new(token: 'token') ?
client.on_message_create(on_ping)
client.open() ?
}
fn on_ping(mut client vd.Client, evt &vd.MessageCreate) {
if evt.content == '!ping' {
client.channel_message_send(evt.channel_id, content: 'pong!') or { }
}
}
More examples
How to install
discord.v uses openssl, be sure it is installed apt install libssl-dev
Only way to run it on Windows is to use WSL (or install
openssl
headers somehow)
git clone https://github.com/Terisback/discord.v.git ~/.vmodules/discordv
And then import discordv
wherever you like
TODO()
First milestone
- Connect to gateway
- Handle heartbeat
- Event system (pub/sub)
- REST for sending messages
- Implement
multipart/form-data
for file sending - Do usual
application/json
for sending without binary data - Handle Gateway events
- Audit Log
- Channel
- Emoji
- Guild
- Invite
- User
- Voice
- Webhook
- Slash Command
- Create examples (3/4)
- Documentation
Second milestone
- Handle REST
- Audit Log
- Channel
- Emoji
- Guild
- Invite
- User
- Voice
- Webhook
- Slash Command
- Observe rate limits (thanks to @div72)
- Slash Commands
- Fancy log
- Command router
- Think about tests
Third milestone (till V v0.3)
- Translate dispatch to generics (not sure about that)
- Build cache ontop map's (memcache, redis in future)
The Main one
- Make a cool library
Contact
Feel free to contribute ;)
You can contact me at discord: TERISBACK#9125