EzProject: Your Discord Buddy for Assignments & Tasks
Hey there! π
Ever felt like keeping track of all your assignments and group tasks on Discord is a mess? EzProject is here to help! It’s a Python-powered Discord bot that makes managing assignments, tasks, and deadlines super easyβright inside your server.
π What Can EzProject Do?
- Add & List Assignments: Quickly add new assignments and see what’s due.
- Task Tracking: Log your tasks, update progress, and check things off as you go.
- Deadline Reminders: Never miss a due date again!
- Role Management: Assign roles to your friends or teammates for better collab.
- Handy Commands: Need help or info? There are commands for that too.
- Slash Commands: Use modern Discord slash commands for a smooth experience.
- Modular Design: Each feature is its own “cog” (module), so it’s easy to add more cool stuff later.
How’s It Built?
Here’s a peek at the folder structure:
EzProject/
βββ bot/
β βββ main.py # Bot launcher
β βββ slash_commands.py # Slash command definitions
β βββ commands.py # Old-school command support
β βββ cogs/ # All the feature modules
β βββ assignment_management.py
β βββ deadline_management.py
β βββ task_management.py
β βββ role_management.py
β βββ utility_commands.py
βββ Datamodule/db.py # Where your data lives
βββ config.py # Bot token & config
βββ requirements.txt # Stuff you need to install
- Bot loads up all the cogs so each feature works on its own.
- Supports both old and new commands (but slash commands are the way to go!).
- Stores your data locallyβno fancy database needed to get started.
- Config is simpleβjust set your token and you’re good.
How Do I Use It?
Add an assignment:
@app_commands.command(name="add_assignment", description="Add a new assignment.")
async def add_assignment(interaction: discord.Interaction, name: str, due_date: str):
...
Typical flow:
- You type a command (like
/add_assignment). - The bot does its thing and saves your info.
- You get a friendly reply (“Assignment added!”).
- Check or update stuff whenever you want.
How to Deploy on Railway
Want to run EzProject 24/7? Railway makes it easy:
- Fork or clone the repo to your GitHub.
- Sign in at Railway and hit “New Project”.
- Pick “Deploy from GitHub Repo” and connect your EzProject repo.
- Set up your environment variables (like your Discord bot token).
- Click “Deploy” and you’re live!
If you get stuck, check out the Railway Docs.
Wrap Up
EzProject is all about making Discord group work less stressful and more organized. Whether you’re a student, a club leader, or just want to keep your server tidy, give it a try!
Want to see the code or contribute? Check it out here: EzProject on GitHub