Skip to content

rafaykhan-source/marshmallow

Repository files navigation

Marshmallow

Automates administrative and managerial tasks on Princeton EBCAO Discords.

Development Setup

The project uses ruff, ty, and pre-commit for linting, formatting, type-checking, and code consistency checks. You can install all of these tools using uv tool install and run them on the project where the respective tool configurations are stored in the pyproject.toml.

Setup the virtual environment:

uv venv

Setup pre-commit:

pre-commit autoupdate
pre-commit install
pre-commit run -a

In the root directory, run:

mkdir build logs data assignments messages

Usage (Local)

uv run src/marshmallow

Marshmallow Operations (Archive)

  1. /info member

Developed to quickly retrieve username, nickname, display name, and roles.

Note

It helps diagnose whether discord.py is properly detecting members’ various aliases, which is integral for the bot's name-matching algorithm.

  1. /clone_role role new_role_name

Instead of creating a new role and tediously updating permissions, clone an existing role with similar or the same permissions and modify accordingly.

Note

Discord does not have a UI method for duplicating roles, so this command was implemented.

  1. /peep

This is a marshmallow thematic rendition of the idiomatic /ping command to check whether the bot is responding.

  1. /about

This is just for the curious.

  1. /sync

Updates Marshmallow’s registered slash commands and documentation.

  1. /*load cog_name

This allows bot code to be dynamically updated, added, or removed without taking down the bot.

  1. /clone_roles role base_name start end

Make Zee Group 9 to 14 roles.

  1. /clone_channels channel base_name start end

Make zee-group-9 to 14 channels.

Note

The commands above are useful for creating channels and roles with the same permissions in bulk.

  1. /delete_roles base_name

Remove all roles with “Spring Mentorship” in its name.

pre-commit Ruff Nox

About

Automates administrative and managerial tasks on Princeton EBCAO Discords.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors