Skip to content

Latest commit

 

History

History
325 lines (223 loc) · 12.4 KB

UserGuide.adoc

File metadata and controls

325 lines (223 loc) · 12.4 KB

FitBiz - User Guide

1. Overview

1.1. About FitBiz

FitBiz is a business management tool tailor made for fitness coaches to manage their clients. From managing your client’s profile to planning your schedules, FitBiz will surely ease the pain and monotony of managing a small to medium client portfolio.

This program is primarily a desktop application and optimised for those who prefer to work with a Command Line Interface (CLI). If you can type fast, and have clients to train and manage, FitBiz is definitely for you!

1.2. About this User Guide

This User Guide explains how to use the FitBiz CLI, as well as provides an understanding of the features and commands and some common use cases.

In this guide, we cover:

  • Syntax of the commands available in FitBiz

  • Common use cases for each command

1.3. Miscellaneous Features

As this is primarily a CLI based application, some features are included to make the user experience better. The following features are provided to simplify the use of FitBiz:

  • Command History: similar to most modern CLIs, users can press the Up and Down arrow key to cycle through their previously entered commands. This history is persisted in the storage, allowing users to quickly reference what they have entered in a previous usage of this app.

  • Command Auto Completion: again, similar to most modern CLIs, users can press the Tab key to auto complete the commands that they have partially typed. If the partially typed letters begin a string that uniquely identifies a command, the complete command name appears. Otherwise, a list of all commands similar to the ambiguous letters will appear.

2. Quick Start

  1. Ensure you have Java 11 or above installed in your Computer

  2. Download the latest FitBiz.jar here

  3. Copy the file to the folder you want to use as the home folder for your Fitness Manager

  4. Double-click the file to start the app. The GUI should appear in a few seconds

  5. Type the command in the command box and press Enter to execute it. e.g. typing help and pressing Enter will open the help window.

  6. Some example commands you can try:

    • list-c : lists all clients

    • add-c n/John Doe g/Male p/98765432 e/[email protected] a/John street, block 123, #01-01 b/24-12-1997 h/170 cw/70 tw/75 : adds a client named John Doe to FitBiz

    • exit : exits the app

  7. Refer to Section 3, “Commands” below for details of each command

3. Commands

This section introduces the syntax and the usages of the commands available in FitBiz. In explaining the syntax, we will adhere to the following format:

  • Words in UPPER_SNAKE_CASE are the parameters to be supplied by the user

    • e.g. in add-c n/NAME, NAME is a parameter which can be used as add-c n/John Doe

  • Items in square brackets are optional

    • e.g. n/NAME [t/TAG] can be used as n/John Doe t/friend or as n/John Doe

  • Items with after them can be used multiple times including zero times

    • e.g. [t/TAG]… can be used as (i.e. 0 times), t/friend, t/friend t/family etc.

  • Parameters can be in any order

    • e.g. if the command specifies n/NAME p/PHONE_NUMBER, p/PHONE_NUMBER n/NAME is also acceptable

3.1. Add a new client profile: add-c

Initialises and adds a new client profile.

Format: add-c n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [g/GENDER] [h/HEIGHT] [cw/CURRENT_WEIGHT] [tw/TARGET_WEIGHT] [r/REMARK] [s/SPORT]… [t/TAG]…

  • n/NAME is case insensitive. e.g hans will match Hans

  • The order of words will matter. e.g Hans Ong will not match Ong Hans

  • Only exact match will be shown. e.g. Hans will not match Hans Ong

  • A client can have any number of tags (including 0)

Examples:

  • add-c n/Ming Liang p/98765432 e/[email protected] a/John street, block 123, #01-01

    • Adds a new client: Ming Liang with the above information

  • add-c n/Low Tah Kiow, John t/powerlifter e/[email protected] a/some street p/1234567 t/strongman

    • Adds a new client: Low Tah Kiow, John with the above information

3.2. Add a client’s exercise: add-e

Adds and records an exercise to the client currently being viewed.

Format: add-e n/EXERCISE_NAME d/DATE [ew/EXERCISE_WEIGHT] [reps/REPS] [sets/SETS]

  • add-e can only be used when a client is in view (ie. view-c is called first)

  • DATE must be of the form DD-MM-YYYY (ie. 02-07-2020 for 2nd July 2020)

  • n/EXERCISE_NAME is case sensitive. e.g squats will not match Squats

  • The order of words will matter. e.g High Lunge will not match Lunge High

  • [ew/EXERCISE_WEIGHT] [reps/REPS] [sets/SETS] must be a positive whole integer (ie. 1, 2, 3, …​)

Examples:

  • view-c 1

    add-e n/Push Ups d/25-02-2020 reps/50

    • Adds an exercise called "Push Ups" with "50 reps" on 25th February 2020 to the 1st client

  • view-c 3

    add-e n/Bench Press d/26-02-2020 ew/120 reps/10

    • Adds an exercise called "Bench Press" of weight 120kg with "10 reps" on 26th February 2020 to the 3rd client

3.3. Delete a client’s exercise: delete-e

Deletes an existing exercise at the specified index from the exercise list of the client currently being viewed.

Format: delete-e INDEX

  • delete-e can only be used when a client is in view (ie. view-c is called first)

  • INDEX refers to the index number shown in the displayed exercise list of the client currently being viewed

  • INDEX must be a positive integer (ie. 1, 2, 3, …​)

Examples:

  • view-c 1

    delete-e 4

    • Deletes the 4th exercise from the exercise list of the 1st client

3.4. Delete a client: delete-c

Deletes the client at the specified index from the program.

Format: delete-c INDEX

  • INDEX refers to the index number shown in the displayed client list

  • INDEX must be a positive integer (ie. 1, 2, 3, …​)

Examples:

  • delete-c 4

    • Deletes the 4th client from the program

3.5. Edit a client’s profile: edit-c

Edits the client’s cliental details by specifying the attribute and the new value.

Format: edit-c INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [g/GENDER] [h/HEIGHT] [cw/CURRENT_WEIGHT] [tw/TARGET_WEIGHT] [r/REMARK] [s/SPORT]… [t/TAG]…​

  • INDEX refers to the index number shown in the displayed client list

  • INDEX must be a positive integer (ie. 1, 2, 3, …​)

  • At least one of the optional fields must be provided

  • When editing tags, the existing tags of the client will be removed i.e adding of tags is not cumulative

  • You can remove all the client’s tags by typing t/ without specifying any tags after it

Examples:

  • edit-c 1 n/Ming Liang a/60 a/male

    • Edits the name of the 1st client to Ming Liang, age to 60, and gender to male.

3.6. Export as CSV: export [Coming in v1.4]

Exports a client’s training record to a CSV file.

Format: export INDEX

  • INDEX refers to the index number shown in the displayed client list

  • INDEX must be a positive integer (ie. 1, 2, 3, …​)

Example:

  • export 6

    • Exports training records of the 6th client

3.7. Filter clients based on attribute: filter-c [Coming in v1.4]

Filters the client list by the specified keyword(s) that matches the name or any attributes the client has.

Format: filter-c KEYWORD [MORE_KEYWORDS]

  • The search is case insensitive. e.g push ups will match Push Ups

  • The order of the keywords does not matter (e.g. Push Pull will match Pull Push)

  • Only full words will be matched e.g. Push will not match Push Pull

  • Clients matching at least one keyword will be returned (i.e. OR search). e.g. Hans Bo will return Hans Gruber, Bo Yang

Examples:

  • filter-c Johnny

    • Returns a client list of Johnny Tim and johnny

3.8. Display visualisations of training progress: graph [Coming in v1.4]

Shows visualisations of a client’s exercise progress.

Format: graph e/EXERCISE_NAME [s/START] [e/END]

  • Generates a graphical representation of the client’s progress

  • If START or END is not specified, it will default to the current month

  • Date format of [s/START], [e/END] is DD-MM-YYYY

  • This command can only be used while viewing a client (ie. right after view-c is used)

Examples:

  • graph e/Push Ups

    • Shows a graph of Ming Liang’s Push Ups progress over the current month

3.9. View help: help

Opens a window with the link to the User Guide. Currently in v1.3 Lists all available commands and a short description of what they do. Specify the command for more detailed explanation. Coming in v1.4

Format: help [c/COMMAND]

Examples:

  • help

    • Lists all commands

  • help add-c

    • Shows a detailed explanation of the add-c command

3.10. List all clients: list-c

Shows all clients currently entered in this program.

  • Note that this is the default view when you first launch FitBiz

Format: list-c

3.11. View a client profile: view-c

Shows all available information of the client at the specified index. This also displays all the exercises recorded for the client as well as their personal bests for said exercises.

Format: view-c INDEX

  • INDEX refers to the index number shown in the displayed client list

  • INDEX must be a positive integer (ie. 1, 2, 3, …​)

Examples:

  • view-c 3

    • Shows all information about the 3rd client

  • view-c 45

    • Shows all information about the 45th client

3.12. Schedule trainings for a client: schedule

Assigns weekly schedule timings to a client. The schedule will be displayed on the right panel of FitBiz, with the timings as well as the client’s name. This command can assign multiple schedules to a client at once, by adding more arguments following the command.

Format: schedule INDEX day/DAY st/STARTTIME et/ENDTIME

  • INDEX refers to the index number shown on the displayed client list

  • INDEX must be a positive integer(ie. 1, 2, 3, …​)

  • INDEX must be for an existing client index number

  • DAY must be any one of the following values:

    • MON

    • TUE

    • WED

    • THU

    • FRI

    • SAT

    • SUN

  • DAY is not case-sensitive

Examples:

  • schedule 1 day/mon st/1100 et/1200

    • Adds to the 1st client a schedule for training from 11:00am to 12:00pm on Monday

3.13. View schedule for the day/week: view-s [Coming in v2.0]

Shows the schedule for today or the time specified.

Format: view-s TYPE

  • TYPE must be either today, week or month

Examples:

  • view schedule today

    • Shows the schedule for today

  • view schedule week

    • Shows the schedule of the current week

4. FAQ

Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous FitBiz folder.

5. Command Summary

5.1. General Commands

Command Summary

export INDEX

Exports client’s training record to a CSV file.

help

Shows all available commands and their description.

view-s TYPE

Shows schedule for today or time specified.

5.2. Client Commands

Command Summary

add-c n/NAME p/PHONE_NUMBER e/EMAIL [t/TAG]…

Adds a new client into FitBiz.

delete-c INDEX

Deletes a client and its associated exercises.

edit-c INDEX [n/NAME] [p/PHONE] [e/EMAIL] [t/TAG]…​

Edits an existing client.

filter-c KEYWORD [MORE_KEYWORDS]

Filters a client based on specified keywords.

list-c

Shows the list of clients in FitBiz.

view-c INDEX

Shows detailed information of a client.

schedule INDEX [day/DAY] [st/STARTTIME] [et/ENDTIME]

Assigns a schedule to a client.

5.3. Exercise Commands

Command Summary

add-e n/EXERCISE_NAME d/DATE ew/WEIGHT reps/REPS sets/SETS

Adds a new exercise to a client.

delete-e INDEX

Deletes an exercise in the exercise list of the client.

graph e/Push Ups

Shows a graph of the exercise progress done by a client.