An awesome Canvas Discord bot to assist and connect your Discord server with Canvas! Β· Report Bug Β· Request Feature
Table of Contents
π Stay Informed: Receive instant notifications about upcoming assignments, quizzes, and important announcements in your DM's. Never miss a due date again!
(Still Developing) π Synchronized Calendars: Sync your Canvas course calendars with your Discord server to effortlessly manage your schedule. The bot ensures that you're always aware of what's ahead.
π’ Announcement Broadcasting: Professors and instructors can easily broadcast course announcements to your DM's, ensuring effective communication with students.
π Assignment Details: Quickly access assignment descriptions, without leaving Discord. The bot enhances your efficiency by keeping everything within your reach.
(Still Developing) π Grade Notifications: Receive instant updates when your grades are posted. Celebrate your successes and track your progress without constantly logging into Canvas.
π Security Matters: Your privacy and data security is top priority. The bot operates within authorized channels and follows all relevant security protocols.
Node.js: Make sure you have Node.js installed on your system. If not, you can download it from the official Node.js website.
Canvas API Credentials:
- Go to your Canvas LMS account settings
- Look for the "Approved Integrations" or "API Access Tokens" section
- Generate a new API token
- Copy the generated token and paste it into the .env file
- Keep this token secure as it provides access to your Canvas account
Discord Bot Token:
- Go to the Discord Developer Portal (discord.com/developers/applications)
- Create a new application and add a bot to it
- Find the bot token in the "Bot" section
- Copy the bot token and paste it into the .env file
- Invite the bot to your Discord server using the OAuth2 URL generator
Supabase Account:
- Set up a Supabase account at supabase.com
- Create a new project (you can use the "Free" tier)
- Find the project URL and anonymous key in "Settings" > "API"
- Paste the project URL and anonymous key into the .env file
- Then navigate to the sql editor in Supabase and copy the setup.sql script into the SQL editor in Supabase to create the database schema
- bun
bun add bun@latest -g
- Clone the repo
git clone https://github.com/ICEPrey/Canvas-Discord-Bot
- Install NPM packages
bun install
- Compile the project
bun run watch
- Run the project
bun run start
/account (to insert canvas token)
/assigment (to display assignments from canvas)
/missing (to dm you missing assignments)
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See license for more information.