Inspiration
For most students, semesters are often hectic with a lot of assignments. Having a schedule makes the semester easier to handle as you now have a solid plan. However, creating a schedule itself may become too time-consuming, so we thought of automating that task. By accessing your Google calendar, our app can see your current events, and, based on your input, break down the assignment into blocks of certain durations and create events in your calendar and you will be reminded to work on that assignment.
What it does
Before Timetomata creates events for your assignment, we want to know when you sleep and eat so we can avoid scheduling during that time. After we get that information, the user inputs an assignment and number of hours they will probably need to finish the assignment and how many hours can they dedicate in one session and what the deadline is. After receiving the data, Timetomata looks at your Google calendar and extracts all events currently scheduled. Timetomata then tries to create events based on the current events as well as your eating and sleeping schedule.
How I built it
We built Timetomata in React and Python. The frontend is developed using React and the backend is built on Python. We used the Google calendar API to read and create events. Flask is used to support the Python server.
Challenges I ran into
We had very little experience working with React before this project. We had to learn how to develop in react and send data to the backend. For the backend, having a list of intervals and finding a time slot big enough for user’s criteria needed some thought.
Accomplishments that I'm proud of
The website works as intended. The backend can successfully create and retrieve events from the calendar based on the user’s input.
What I learned
We learned how to work with React. Before this project, we had little experience with React.
What's next for Timetomata
There is a lot of scope for this project. We can make the algorithm smart but sensing that if it not able to create events in the required slot, then it can extend an hour in some other timeslot. Right now, it allocates events every day, based on the user’s requirements it can be more spaced out. In the future, users can add collaborators for group assignments so all of them have an event created in their calendar.
Log in or sign up for Devpost to join the conversation.