Rustey banner

Rustey

7 devlogs
41h 56m 8s

A modular, all-in-one discord bot made in rust. It focuses on being easily extendable with new components. I did not have enough time to implement all features, so it’s not really all-in-one yet.

This project uses AI

Github Copilot for PR review + understanding SurrealDB and it’s many quirks

Demo Repository

Loading README...

ElectricSteve

Shipped this project!

Hours: 41.94
Cookies: 🍪 680
Multiplier: 16.22 cookies/hr

I am happy with the current state of my discord bot Rustey written in, you guessed it, rust! This is my first big project in rust and am proud of what I made. I tried to make the bot very extendable so you can easily add new components with options and persistent data. There is still a long way to go to get a bot that is usable day-to-day in a community discord server, but this is good for now.
IF YOU, THE VOTER, KNOW RUST, please consider adding your own component or improving an existing one!

ElectricSteve

Hopefully second to last devlog! Since last devlog I did both some backend stuff, but also some things you’ll notice, including a whole new command! I removed the dependency on dotenv and made a dockerfile so you can deploy the bot using docker! (this was my plan from the start) I also added the first command to the moderation module, a user details command! (still in a separate branch)

Git Changelog

Attachment
Attachment
2

Comments

ElectricSteve
ElectricSteve 27 days ago

Oh yea the github repository is now public!

GoldMonke
GoldMonke 27 days ago

W

ElectricSteve

We now have a settings system for components! It’s hard to show because it’s mainly database stuff and making it compatible with the component system, and for a command to change those settings there isn’t a good system yet, I still have to come up with a clever solution.

Attachment
0
ElectricSteve

Changelog

  • Database
  • Persistent todo
  • Persistent component enabled/disabled
  • Refactored structure
Attachment
Attachment
0
ElectricSteve

The basic component system is in place! Now it’s time to refine it, add a database, and then add a lot of components.

Attachment
0
ElectricSteve

Now featuring: Slash commands.
I did this by implementing the poise framework.

Attachment
0
ElectricSteve

!ping pong!
Simple example from serenity docs. Mainly trying to wrap my brain around the api.

Attachment
0