Discord bot for managing everything Lunaro for the Academia Lunaris Discord Server
Note
Lunaro tracking is enabled for every server member by default.
Lunaro Manager will react to changes in your Discord rich presence. It will automatically set your playing status to "Playing Lunaro" when you are playing Lunaro, and remove it with a small delay when you are not.
You can disable Lunaro tracking for your account at any time using the /tracking pause command.
Guides to the Discord command explorer to discover all commands, and also links to this GitHub section.
Check if Lunaro Manager is online and how long it took to receive the ping. This value is calculated from the system time, and may thus be inaccurate.
Adds the playing role to your profile. You can optionally disable Lunaro tracking for your account at the same time.
Removes the playing role from your profile. You can optionally re-enable Lunaro tracking for your account at the same time.
Lists the number of members playing Lunaro.
Disables Lunaro tracking for your account.
The bot will no longer react to changes in your Discord rich presence. This is useful because the Lunaro tracker will otherwise override your manually set playing status.
Enables Lunaro tracking for your account.
The bot will now react to changes in your Discord rich presence. Now you don't have to manually set your playing status anymore, as the bot will automatically check if you are playing Lunaro.
Displays details about Lunaro Manager, including amount of actively tracked members as well as stats and metadata about the bot.
Displays a link to this GitHub page, encouraging the creation of issues and pull requests.
-
Create a bot on https://discord.com/developers
-
Enable
PRESENCE&SERVER MEMBERSintents in the Bot section -
Invite the bot to your server, giving the following permissions:
- Manage Roles
- Send Messages
-
Create a
.envfile following the schema in .env.schema -
Run the bot using one of the methods below
You can run the bot in several ways, depending on your preference and use case.
You need to have Rust installed. This is the recommended way to run the bot during development.
$ cargo runYou need to have Docker installed. This is the recommended way to run the bot in production.
$ docker compose up --build -dIf you have the Nix package manager installed with Flakes enabled, you have several ways to build and run this bot.
As a reminder:
nix buildbuilds the package binarynix shellbuilds the package binary and makes it available in your$PATHnix runbuilds the package binary and immediately executes it
I will use nix run as the example, but you can use any of the above.
# run from local repository. make sure Cargo.lock is available!
$ nix run
# run latest using remote repository
$ nix run github:imatpot/lunaro-manager
# run specific version using remote repository
$ nix run github:imatpot/lunaro-manager/2.1.0