Song Yu - Project Portfolio Page

Project Overview: Healthier

Healthier is a cross-platform desktop application developed using Java SE 11, which is used for health and fitness data management.
It targets people who care about fitness, who exercise regularly (at least 3 times/week) and have diet plans. It is designed for users of age group 18-30.
The app is used via Command Line Interface (CLI). If the user is proficient in using command-line tools & typing, then it could be very efficient to use. This app also provides several shortcut commands for advanced users for further efficient operations.

Summary of Contributions

Code contributed: Click here to view my code contribution on RepoSense.

Features implemented

  1. Implemented Help to enable help command.
    • This feature allows the user to learn the syntax for all commands available.
  2. Implemented Add records for exercise, sleep, diet, and bodyweight feature.
    • This feature allows the user to:
      • Add one exercise record with workout activity, duration and date (optional).
      • Add one diet record with food category, food weight and date (optional).
      • Add one sleep record with duration and date (optional).
      • Add one body weight record with current body weight and date (optional).
  3. Implemented View records feature.
    • This feature allows the user to view existing records of exercise, sleep, diet, and bodyweight.
    • The displayed result can be filtered by specifying optional parameters.
  4. Implemented Delete records feature.
    • This feature allows the user to delete an existing record of exercise, sleep, diet, and bodyweight.
  5. Implemented Set daily/weekly goals for exercise, sleep, diet, and bodyweight feature.
    • This feature allows the user to:
      • Set a daily/weekly exercise goal with a target energy (in calories) to burn.
      • Set a daily/weekly sleep goal with a target duration (in hours).
      • Set a daily/weekly diet goal with a target energy (in calories) to take in.
      • Set a daily/weekly body weight goal with a target weight (in kg).
  6. Implemented Check daily/weekly goals feature.
    • This feature allows the user to check the current progress of goals set by the user.
  7. Implemented Cancel existing goals feature.
    • This feature allows the user to cancel a goal set by the user.
  8. Implemented Time Controller to manage the system time which is essential for updating the progress of daily/weekly goals.
    • This functionality sets a local time for the app, which is used for loading the goal objects from the data files & updating the corresponding progress of each goal.
    • This functionality allows the automatic initialization & update of the daily/weekly progress for goals.

Enhancements to existing features

Documentation

User Guide

Developer Guide

Project management

Community

I actively helped my teammates to improve their code implementation by giving constructive suggestions as well as possible solutions, and reviewing code of the whole project to ensure the overall code quality. Here are some pull requests where I reviewed and helped rewriting the code: (Pull Requests: #29, #30, #31)