Inspiration
Fruit was inspired by the app Forest, which was designed to help people stay off their phones and focus on being productive. Forest uses planting trees as the motivation for productivity (the more productive you are, the more trees you get). We absolutely loved the idea of using growth/collection as motivation for productivity, and decided to expand it to tracking daily goals, ultimately creating the website Fruit.
What it does
Similar to Forest, Fruit is designed to provide motivation for productivity. But differently from Forest, Fruit is a task-keeping site, where users input and track daily tasks.
Checking off a daily task as complete will increment a progress bar on the dashboard, and completed tasks can be added to a user's Basket. Adding a completed task to the Basket will transform the task into a fruit, giving a visual indication of how much has been accomplished that day. Hovering over a specific fruit will inform the user which task that fruit represents, reminding the user of what they've done and providing a sense of accomplishment for their efforts. Users may also empty the Basket, and delete tasks without adding them to the Basket.
How we built it
Our website was built with HTML, CSS, and JavaScript for the front-end, while using Python and Django for the back-end. SQLite was used to query the database used to store user information.
Challenges we ran into
- Time zone differences
- Minimal experience with web development
- Issues with sharing and updating our files
- Asking which checkboxes are checked
- The progress bar
One of us is based in PDT, while the other is in IST. Because of this, we only had a small window of 2-3 hours in our mornings and evenings, when we were both awake to collaborate.
Neither of us had any experience with using Django, and only one of us (Meenakshi) had some experience with front-end web development. Trying to learn and use Django for the back-end proved to be quite the challenge.
It took us a bit of time to figure out how to properly share and examine each other's code via Github, because some files had to be uploaded manually.
This was a fundamental issue that affected many features (such as the progress bar and the fruits). Due to our inexperience with Django and web development, we struggled to ask this deceptively simple question in our code. Meenakshi was the one to find the solution and make other features possible.
For some odd reason, our progress bar would inaccurately count completed tasks as incomplete, making it impossible to reach 100%. The issue was with the checkboxes, which Meenakshi solved.
Accomplishments that we're proud of
Despite the time zone difference, there was an amazing amount of collaboration. For the small windows we had when we were both awake, we would decide on a goal for the day. One person would then go to sleep while the other would work on that daily goal. We would reconnect in our morning/evening, depending on location, and update the other about progress made. We then made another goal for the second "day". This system of updating is what lead to Fruit's success. Additionally, neither of us had any Django knowledge prior to this hackathon. We're proud of our achievement in simply creating an entirely functional website in an unfamiliar language.
What we learned
- Creating a website using Django
- Adding, removing, editing, and querying a table in a SQLite database
- Using the command prompt to run the test server
- Web design and color schemes
- Causing redirects and linking between separate HTML pages
- The intricacies between the front-end HTML/CSS/JavaScript code interacting with the back-end Python/Django/SQLite code
What's next for Fruit
We'd like to be able to include a "difficulty" factor in the daily tasks: those tasks that are more difficult will yield rarer/more valuable fruit.
We would also like to expand to a mobile version of this website in the future, as well as to put our database on the cloud instead of being stored locally.

Log in or sign up for Devpost to join the conversation.