Code Monkey home page Code Monkey logo

health-tracker-app's Introduction

Health-Tracker-App

Personalized Health Tracker GUI

Currently using Tkinter, will be enhanced to run on a browser using Flask and on Android using Kivy.

The health tracker was built using Tkinter and is running on a PostgreSQl database to store information inserted into GUI.

Installation:

  • git clone https://github.com/lasupernova/Health-Tracker-App.git

Usage:
python tracker.py

Functionality

Sign Up

The signup page can be reached by activatign the signup button on the initial (login) page. User inout will be checked for validity, meaning that the username can not yet exist in the database and that the password needs to be > 6 letters long. Password requirements will change in the future and will require users to choose a safe password (which a 6-letter password - worse without requirements for alternative characters - is certainly not).
After entering a valid username and password, the user will be led through some pages collecting user information, including the user's gender and DOB.
Finally, the user will be transferred to the login page after successful sign up.

Sign Up Process



Login

Th login page is the initial page that is opened once the program is opened. The program will check the entered credentials and will open the health tracker part of the GUI (carrying the users previously inserted data) upon successful login.

Login Process



Tabs and Input

Currently the default tabs and tab options are displayed. The user can change from one tab to another by clicking and can add information, which will be uploaded to the database upon switching tabs (for the current tab) or upon turning off the program (--> database upload upon logging out needs yet to be implemented).

User Input Process                 Sign Up Process

                        tkinter                                                          Plotly Dash 


Changing Dates

The date can be changed using the toggable date picker widget. If entries already exist for the chosen date, the existing data is going to be requested from the database and filled into the GUI at the correct location. Once the data is inserted into the GUI, changes can be made. Any new changes will then be inserted and commited to the database.

Date Change Process                 Date Change Process

                        tkinter                                                          Plotly Dash 


Logout and Switching Users

The logout button can be used to log out the current user. Logging out will bring the user back to the login page, where a new user cna then log in.

Logout Process



Custom GUI Based On User Info

The GUI will have different sections based on user information. Currently, the GUI automatically disables the 'period'-section once a user identifying as 'male' logs in. However, this functionality will be enhanced in the future, in order to allow users to individually choose their desired sections and increase the potential for customization even further.

Logout Process





health-tracker-app's People

Contributors

lasupernova avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

ezeikpe

health-tracker-app's Issues

Toggle not functioning

The toggle function for some of the check boxes that contain additional information to type or add do not work properly.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.