Most people do not drink as much water as recommended per day. This can be seen at large-scale events such as CalHacks, where people are so occupied by their projects that they neglect to drink. As a result their bodily fluids may dip below recommended and be unhealthy for their well-being.

What it does

Waterhax is a hardware and software combination that utilises a LeapMotion sensor and a home-built iOS app to track and record the amount of water a person drinks per day and per week. The amount of water that a person drinks directly correlates to a circle graph on the main screen of the app that visually represents the progress towards the daily recommended intake.

How we built it

We split the project into two teams, one for front-end development and one for back-end development. However, the two teams collaborated on all aspects of the project and everyone did a bit of everything. There was no direct connection from LeapMotion to the iOS app, so we had to go through a Firebase server in order to send and retrieve data. The back-end team's emphasis was the LeapMotion-Firebase interaction (Javascript), while the front-end team's emphasis was the Firebase-iOS data collection (Swift).

Challenges we ran into

Originally, we planned on including achievements to motivate the user to drink more water as well as a slide-out navigation menu between the main screen and settings. There was also to be an option for the user to customise the volume of the water bottle he is drinking from. However, time constraints prevented any of this from being added.

Accomplishments that we are proud of

As a team, we are proud of being able to create our first working app since we all had minimal experience with app development and this is only our first or second hackathon. We are proud of the circle graph, as well as the back-end development.

What we learned

We learned a lot about Javascript, Swift, AutoLayout in XCode, and the LeapMotion API and software.

What's next for WaterHax

We plan to add the features mentioned in the challenges section as well as a leaderboard service for users to compete with their friends.

Share this project: