DisCal Discord Bot
DisCal is a discord bot that connects Discord and Google Calendar as seamlessly as possible with a wide feature set for calendar management and information.
Core Features
- Powerful in-server integration of google calendar
- Custom Calendar creation and editing
- Event creation, editing, and deletion
- Automated announcement system to remind users of events
- Customizable prefix and mentionable commands
- Versatile and built for all communities
- Web dashboard for bot and calendar management
Main Patron-Only Features
Patrons and supporters on the $5/month plans get access to work in progress and exclusive features.
- External Calendars
- Use an already existing calendar that is on your Google account with DisCal
- Web Dashboard (WIP)
- Use the web dashboard to manage the bot, calendar, and more without the need for commands.
- Still very early in development
- Server Branding
- Hide the DisCal name in favor of using your server's name on announcements and embeds.
- Announcement Publishing
- Announcements posted in news channels can be (optionally) automatically "published" so servers following the news channel receive them as well!
Smaller Patron-only Features
- Gif support for event images
- Automatically assign roles to users when RSVPing to an event.
Planned Features & Work in Progress Changes
- Multiple calendars per server (WIP)
- Advanced announcement configuration (WIP)
- Complex recurring event configuration (WIP)
- Proper patreon integration for automated setup.
- Better translation support (Right now using the JSON files is really messy and hard to maintain)
- And so much more!
Quick Links
Technologies
DisCal is primarily written in Java with a TypeScript powered web-frontend. We use the following technologies throughout the project:
- Discord4J API wrapper
- Project Reactor for fully reactive code
- SpringBoot web backend
- MySQL with Redis caching
Developer RESTful API
DisCal was written for the community, and to aid in that goal, DisCal has a fully functioning REST API to allow developers to bring their applications to DisCal.
Current API Version: v2
To get an API token, please contact the development team.
Contributing
DisCal is an open source project and is maintained in our free time. We always welcome and love contributions.
Code
- Fork this repo and make changes in your own copy
- Write your code and add any new tests if applicable
- Run the new and/or existing tests with
mvn clean testto make sure they pass - Commit your changes and push to your fork
git push origin master - Create a new pull request and submit it back to us!
Translations
This section is a work in progress. Thank you for your understanding