Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/soroush-04/androidapp-hydration-tracker
Android application written in Java
https://github.com/soroush-04/androidapp-hydration-tracker
android-studio java mobile-development mongodb
Last synced: about 2 months ago
JSON representation
Android application written in Java
- Host: GitHub
- URL: https://github.com/soroush-04/androidapp-hydration-tracker
- Owner: soroush-04
- Created: 2023-07-08T20:52:27.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-25T13:28:36.000Z (about 1 year ago)
- Last Synced: 2023-12-25T14:39:17.867Z (about 1 year ago)
- Topics: android-studio, java, mobile-development, mongodb
- Language: Java
- Homepage:
- Size: 620 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Hydration Tracker Android App
---Table of contents
=======- [Objectives](#objectives)
- [Development Tools](#devtools)
- [User Interface](#ui)---
This mobile application addresses the challenge of inadequate water intake by motivating users to drink enough water and monitor their daily consumption. The app calculates recommended water goals based on the Total Daily Energy Expenditure (TDEE) formula, allowing users to set personalized targets or use the app's recommendation. Timed notifications remind users to drink and log their water intake, and they can track their progress toward daily goals. The app also offers biometric data collection, notification customization, and visual progress tracking to support healthier hydration habits while respecting user privacy.
## Development Tools
Below, you'll find a list of tools and components used to enhance the application's user experience and functionality.
- __Java__ as the programming language of this project.
- __MongoDB__ as database usage and requirement for the application. We gathered users’ personalized information and stored it in __JSON__ format.
- Used Intent for connecting through the application and transferring from one activity to another and redirecting users between various sections of the app.
- Implemented save state mechanism for the obtained information while using the application.
- Implemented alarm manager and notification builder for notification settings.
- Formatted the application by using Scroll layout and relative layout.
- Various widgets to display data.The primary focus of the User Interface design is centered on simplicity and ease of use, ensuring an intuitive experience for application users. The UI has been precisely designed by integrating multiple sample pages and providing clear guidance on utilizing various widgets. Upon launching the application, users are greeted with a registration page for their initial setup, where they are prompted to provide the necessary information for account creation. For returning users, a straightforward 'Sign In' option is available to access their existing accounts within the application.
The next page in the application is the home page of it. As we can see here it contains different information and widgets.
The first one is the Goal of intake water for the user. The user can also modify this goal amount by using the Set Goal option.
The next part is showing the total progression of water consumption for the user. In the Add Water section, the user can input the amount of consumed water, so the total progress will be updated based on it in the Home Page.
The last three options are profile, reminders, and logout for adjusting user’s information, modify notifications, and log out from account respectively.
In the Set Goal page, users can set a custom amount of intake water goal or use the Calculate Goal to do the calculation based on Total Daily Energy Expenditure formula.
The goal amount will be updated as well in the home page.
In the Reminder page, we can set wake up and sleep time for the application, so mute the notification during that time. We also have the option to set preferred time intervals to get notifications throughout the day.
The last section is the 'Profile,' where users can update their personal details. All user information is stored and retrieved using MongoDB for reuse.