Inspiration
This project was inspired by Discord, as all of us uses Discord Bot on a day-to-day basis for fun or making announcements. This Bot mixes productivity with fun.
What it does
This is Discord MARK BOT which provides the users with some basic built-in functionalities or discord commands. The Node.Js REST API has various endpoints with various states supporting different types of requests like GET, POST & PUT. Currently, the BOT is in its version 1.0.0, it has completed the testing phase and is now available to use in your various Discord servers. The BOT currently has 3 commands for using:
-todo |
Description |
---|---|
-todo show |
This displays the ToDo list for the current date. |
-todo show DD-MM-YYYY |
This displays the ToDo list for any specified date. The format of the date here is very important. |
-todo add "Message" |
Use this command to add any item to the current ToDo list. |
The BOT is connected to Google Firebase Firestore to store all of the values which can be accessed with the help of API calls to the designated endpoints.
Endpoints
- /data/todo
- A GET request to
/data/todo/
results in generating a JSON of all the of the ToDo items added. - A GET request to
/data/todo/:date
results in ToDo items only for a specified date. - A POST request to
/data/todo
with the reuired headers and body results in the addition of a new ToDo for the current date. - A PUT request to
/data/todo/:id
with the required headers and body results in completing a ToDo item.
This endpoint is currently linked to my firebase, so any GET/POST/PUT request affects my firebase firestore database.
How we built it
The Discord BOT is built using JavaScript and using node.js the back-end API is made which connects to the Google Firebase Firestore.
Challenges we ran into
The initial challenge was to create a discord bot using JavaScript as most of the BOTs have been using Python. But Discord.js came really handy and it was easy to make a simple BOT that responds to user commands. The next challenge was to understand the commands given by the user as right now we have 3 major commands for inserting and getting ToDo, so we achieved this using the pattern matching technique of RegEx. The next challenge was to actually make the API work and do thorough testing of it, as sometimes there are CORS errors like that. And lastly, we had to connect everything to Google Firebase Firestore and make requests over there for inserting and fetching data. And then displaying the data in the Server Channel Chat.
What's next for ToDo Manager Discord BOT
Next, we plan to add the feature to upload images to Google Firebase Storage and even get the images from their too. More things and more commands can be added in this Discord BOT.
Links:
NOTE
We have not really made a video but this is the video we referred to for making a basic Discord BOT
Built With
- firebase
- firestore
- javascript
- node.js
Log in or sign up for Devpost to join the conversation.