Inspiration
We were thinking of something that could be helpful in our everyday lives, and that would be easy to access. We noticed that budgeting our time and managing our schedules is important to us as college students. In our generation, Discord is a huge part of our communication, and something we use on a daily basis. We concluded that making a Discord bot that could help each user budget their time would be useful for helping them visualize and improve their time management.
What it does
Since it is a Discord bot, Discord users can easily add it to a server or group chat to access it. It allows users to budget and organize their time into categories that they create. Each category can be easily added or deleted. Additionally, the user can choose to view all existing categories if they wish to. Once the user has decided to spend time on a chosen category, they can start a timer with a simple command. They can also stop the timer at any time with a similar command. They also have the option to generate a pair of pie charts based on their planned time budget and the actual time they spent on each category, with the differences between the two being shown below the charts.
How we built it
We built it using JavaScript in Visual Studio Code and used SQLite as the database.
Challenges we ran into
One of the biggest challenges we faced was the language we chose to use. When we were deciding how to create the Discord bot, Python and JavaScript seemed to be the best language choices. However, the members of our team had minimal experience with Python and no experience with JavaScript. Since some of us did have some Java experience, we wanted to challenge ourselves with a new language, and chose to use JavaScript. However, using a new language while only having twenty-four hours to code was very difficult and sometimes stressful. Another challenge we had was generating the pie charts and displaying the images in discord. In this area, we had no knowledge, and had to lean heavily on AI to get the result we wanted.
Accomplishments that we're proud of
We are very proud of completing every feature we had planned to create. We were worried that since we were using a new language and creating something that none of us had experience with, that it may take too much time. Also, since today was our first day working together, we weren't too sure how well we would work together. In the end, we were able to split the work equally, coded efficiently, and had enough time to not only complete the entire project, but also to test for potential errors.
What we learned
During this hackathon we all learned more about a language that was new to us, JavaScript, and how to create a Discord bot using it. JavaScript is very different from languages that we have used so far, so it was difficult to understand at first. But as we played around with it we started to understand the basics, and it helped us appreciate the uniqueness of the language. We have experience using Discord bots as users, but have never created bots ourselves, so it was a fun experience to be able to learn how to create one from scratch. This helped us understand how the tools we use in our daily lives are created, and the work that others have put in to create them.
What's next for TimePie
Currently, TimePie can only generate a time budget statement for the current day. The next step for TimePie would be storing several days worth of information, and letting the user choose a specific day to print a statement for.
Built With
- canvas
- chart.js
- discord.js
- javascript
- sqlite
- vscode
Log in or sign up for Devpost to join the conversation.