Inspiration

As university students, we recognize productivity is often the number one priority. We have often experienced assignments and projects pile up throughout the week. The problem our app aims to solve is improving student productivity.

After conducting research, we observed that the practice of time blocking has become popular in recent years as a time management technique. In time blocking, users divide their day into blocks of time dedicated to specific tasks.

However, many students who attempt to start time-blocking aren’t sure where to even begin. They may wildly overestimate or underestimate the time needed to do certain tasks. Tracking the average amount of time it takes to do tasks can become another grueling task that drives away potential users of time blocking.

Our app solves this issue through analytics by providing users with statistics of their average studying time per course.

What it does

Our app seeks to improve student productivity. On the user dashboard, our app provides a to-do list of assignments categorized by the classes they are for. It times how long it takes the user to complete a task from start to finish. It uses that data to provide analytics about the average amount of time spent per class and the total number of study hours the user spent on each class each week. In addition, our app supports collaboration among users by posting a feed of other people doing similar assignments and allowing them to send/accept requests to meet up at a specific time and location to work together.

How we built it

We built the app using popular technologies for full-stack web development. For the frontend, we used React, Javascript, and CSS to display the user dashboard, analytics, and feed. For the backend, we used Firebase to manage data about users' tasks, study hours, and collaboration requests. To improve the development environment, we also made use of Vite, a build tool for React applications that is a faster alternative to Create React App.

Challenges we ran into

Our biggest challenge was implementing the backend. It was our first time using Firebase, so we had to seek out various resources and experiment with several different setups to configure the database properly. Although we had experience working with databases using MySQL, PostgreSQL, and MongoDB, the commands of Firebase were completely foreign to us. It was particularly difficult to understand how to fetch data for the React components.

Accomplishments that we're proud of

First off, we are proud that despite being completely new to Firebase, we were ultimately able to figure out how to use it to implement a fully functional backend for our web app. We are also proud of our aesthetic user interface, as we put significant effort into creating a beautiful design for our web app in Figma. Furthermore, we are happy with the way we divided up the frontend development in a way that each of us could practice our React skills. Although we were all relatively new to using React, we were all able to contribute to creating a functional and aesthetic React application. And finally, we are glad we could create a useful product that works for a wide range of users and supports a variety of learning types, as our app is great for people who just want to use it for the analytics and to-do list functionality, as well as those who are looking for a more collaborative productivity experience.

What we learned

In addition to learning about teamwork and task delegation, we also became more well-versed in important web development technologies, particularly React and Firebase. Besides just using each of them separately, we also gained experience with integrating the React frontend and Firebase backend into a full-stack application. After honing our skills with these popular and in-demand technologies, our learning experience during this hackathon will definitely help us in our future projects and career endeavors.

What's next for task.clear

To further improve and add extra features to the app, we hope to start by providing more in-depth user analytics, broken up not just by week, but also by month, quarter/semester, and year, ideally in a visual way that makes use of informative graphs. Also, we would like to build an in-app messaging system to let users negotiate the logistics of where and when they will meet if they wish to collaborate on an assignment together. Furthermore, while our project is currently a web app, creating a mobile version in addition to the web one would be more helpful for our userbase. Finally, as our app is currently only for UCLA students, we aim to expand to other universities and have separate in-app communities for various college campuses across the country.

Share this project:

Updates