User Guide
FlashBack is a desktop application for managing notes, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). This application allows the improvement of student performance via improved accessibility and organisation of notes, together with interactive sessions that enhance memory retention.
Table of Contents
- Quick start
- Application layout
-
Features
-
Main mode
-
Viewing help:
help
-
Adding a new flashcard:
add
-
Editing a flashcard:
edit
-
Listing all flashcards:
list
-
Deleting a flashcard:
delete
-
Viewing a flashcard:
view
-
Finding flashcards:
find
-
Filtering flashcards:
filter
-
Clearing all flashcards:
clear
-
Undoing a command:
undo
-
Redoing a command:
redo
-
Sorting all flashcards:
sort
-
Entering review mode:
review
-
Viewing statistics of flashcards:
stats
-
Adding an alias:
alias
-
Exiting the program:
exit
- Saving the data
- Editing the data file
- Editing the preferences file
-
Viewing help:
- Review mode
-
Main mode
- FAQ
- Command Summary
Quick start
- Ensure you have Java
11
or above installed in your Computer. - Download the latest
FlashBack.jar
from here. - Copy the file to the folder you want to use as the home folder for your FlashBack.
- Double-click the file to start the app. The GUI should appear in a few seconds.
- Below are some commands you can try, type the command in the command box and press Enter to execute it:
-
help
: Opens the help window. -
add
q/ What is the Einstein’s Equation? a/e=mc^2 c/Physics p/High t/ModernPhysics
: Adds a new flashcard namedWhat is the Einstein's Equation?
to FlashBack. -
view
2
: Views the 2nd flashcard shown in the current list. -
delete
1
: Deletes the 1st flashcard shown in the current list. -
clear
: Deletes all flashcards. -
exit
: Exits the application.
-
- Refer to the Features below for details of each command.
Application layout
The figures below explain the different components in FlashBack.
Main window
Review mode
Brief explanation of each component:
Components | Explanation |
---|---|
Command Box | This is where you type all the commands. |
Result Display | This is where the result of your input to the command box is displayed. |
View Pane | This is where the output for view and stats command is displayed. |
Flashcard List | This is where all the flashcards are displayed to user. |
Main mode | This is the first window when you open the app. Most of the commands are executed here. |
Review mode | This is where you can review all your flashcards. You can enter this mode by typing review in the Command Box of the Main mode. |
Features
Notes about the command format:
-
Words in UPPER_CASE are the parameters to be supplied by the user.
e.g. Inadd q/QUESTION
,QUESTION
is a parameter which can be used asadd q/What is Fermat's Last Theorem?
. -
Items in square brackets are optional.
e.g.q/QUESTION [t/TAG]
can be used asq/What is Singapore Independence Day?
or asq/What is Singapore Independence Day? t/Singapore
-
Items with
…
after them can be used multiple times including zero times.
e.g.[t/TAG]…
can be used ast/vocabulary
,t/vocabulary t/SAT
etc. -
Parameters can be in any order.
e.g. If the command specifiesq/QUESTION a/ANSWER
,a/ANSWER q/QUESTION
is also acceptable. -
Extraneous parameters for commands that do not take in parameters (such as
help
,list
,undo
,redo
,exit
andclear
) will be ignored.
e.g. If the command specifieshelp 123
, it will be interpreted ashelp
. -
Prefixes are case-sensitive.
e.g.q/
is not the same asQ/
. -
If a parameter is expected only once in the command, but you specified it multiple times, only the last occurrence of the parameter will be taken.
e.g. If you specifyc/Geography c/History
, onlyc/History
will be taken.
e.g. If you specify-a -d
, only-d
will be taken. -
For commands that accepts
INDEX
parameter (e.g.edit
,view
,delete
, andstats
):- The index refers to the index number shown in the displayed flashcard list.
- The index must be a positive integer 1, 2, 3, … but not above 2147483647.
Main mode
Viewing help: help
Shows a message explaining how to access the help page.
Format: help
Adding a new flashcard: add
Adds a new flashcard to the flashcard list.
Format: add q/QUESTION a/ANSWER c/CATEGORY p/PRIORITY [t/TAG]...
The
TAG
is optional when adding a new flashcard.Tag(s) should be alphanumeric, and there should not be any spacing between characters.
Priority can only take 1 out of 3 values:
High
, Mid
or Low
, case-sensitive.
Examples:
-
add q/Einstein’s Equation a/e=mc^2 c/Physics p/High
add q/Independence day of Singapore a/August 9th 1965 c/History p/Mid t/Singapore
Editing a flashcard: edit
Edits an existing flashcard in the flashcard list.
Format: edit INDEX [q/NEW QUESTION] [a/NEW ANSWER] [c/NEW CATEGORY] [p/NEW PRIORITY] [t/TAG]...
- Edits the flashcard at the specified
INDEX
. - At least 1 updated card field must be provided for modification.
- If the tag field is specified in the command, all existing tag(s) will be removed and replaced by the new tag(s).
- New tag(s) should be alphanumeric, and there should not be any spacing between characters.
- New priority can only be
Low
,Mid
orHigh
, case-sensitive.
Examples:
-
edit 1 p/Low
edit 3 q/What is the time complexity for Quick Sort? t/Algorithms
Listing all flashcards : list
Shows all flashcards in the flashcard list.
Format: list
Deleting a flashcard : delete
Deletes a specific flashcard from the flashcard list.
Format: delete INDEX
- Deletes the flashcard at the specified
INDEX
.
Examples:
-
list
followed bydelete 2
deletes the 2nd flashcard in the flashcard list.
Before executing commanddelete 2
:
After executing commanddelete 2
:
Viewing a flashcard : view
Views a specific flashcard from the flashcard list.
Format: view INDEX
- Views the flashcard at the specified
INDEX
.
Examples:
-
view 2
shows the 2nd flashcard (in the displayed flashcard list).
Finding flashcards : find
Finds flashcards containing any of the given keywords in FlashBack.
Format: find KEYWORD [MORE_KEYWORDS]
- The search is case-insensitive. e.g.
equation
will matchEquation
- The order of the keywords does not matter. e.g.
Newton Equation
will matchEquation Newton
- Partial words can be matched when searching. e.g.
Wh
will matchWhat?
butWhat?
will not matchWhat
- Any flashcard’s fields (e.g. question, answer, category, priority, and tag) matching any keyword will be returned.
list
command
Examples:
-
find computer
will return cards withcomputer
in any of its fields.
-
find computer formula
will return cards withcomputer
orformula
in any of its fields.
-
find phy
will return cards withphy
contained in any of the words in any of its fields.
Filtering flashcards: filter
Filter flashcards based on specified field input in FlashBack.
question
, category
, priority
, and tag
.
Format: filter [q/QUESTION] [c/CATEGORY] [p/PRIORITY] [t/TAG]
- The filter is case-insensitive. e.g.
equation
will matchEquation
- Must filter by at least 1 field, but not every field is required.
- Can filter by multiple keywords for each field. e.g.
filter q/einstein math
- The order of the keywords does not matter. e.g.
Newton Equation
will matchEquation Newton
- The order of the field input does not matter. e.g.
filter q/QUESTION c/CATEGORY
is same asfilter c/CATEGORY q/QUESTION
- Filtered flashcards must match all field inputs. e.g.
filter q/einstein p/mid
will only display flashcards with question containingeinstein
andmid
priority. - Partial words can be matched when filtering. e.g.
Wh
will matchWhat?
butWhat?
will not matchWhat
list
command.
Examples:
-
filter q/charles recursion
will return cards withcharles
orrecursion
contained in its question.
-
filter p/mid q/formula
will return cards withformula
contained in its question andmid
priority.
-
filter c/com t/ran
will return cards withcom
contained in its category andran
contained in any of its tags.
Clearing all flashcards : clear
Clears all flashcards from FlashBack.
Format: clear
Undoing a command : undo
Restores FlashBack to the state before the most recent undoable command was executed.
add
, delete
, edit
and clear
).
Format: undo
Examples:
delete 3
clear
undo
will reverse the clear
command.
undo
will reverse the delete 3
command.
Redoing a command : redo
Redoes the most recent action that was undone (reverses the undo
command).
Format: redo
Examples:
clear
undo
will reverse the clear
command.
redo
will reverse the undo
command.
Sorting all flashcards: sort
Sorts all flashcards in display according to a given option.
priority
or question
.
Format: sort OPTION ORDER
Examples:
sort priority -a
will sort the flashcards by ascending priority (Low to High).
sort priority -d
will sort the flashcards by descending priority (High to Low).
sort question -a
will sort the flashcards by question in ascending alphabetical order.
sort question -d
will sort the flashcards by question in descending alphabetical order.
Before sort command is executed.
After sort priority -a
command is executed.
Entering review mode: review
Reviews list of flashcards that is in display.
When the user enters review
in the command box, this new window will appear.
Format: review
Viewing statistics of flashcards: stats
Shows the statistics of an individual flashcard, or the statistics of all flashcards.
The following statistics are displayed:
- Number of times the user reviewed the flashcard(s).
- Number of times the user reviewed the flashcard(s) and got the correct answers.
- The correct rate of the flashcard(s). i.e The number of correct answer reviews over the total number of reviews.
- The wrong rate of the flashcard(s). i.e The number of wrong answer reviews over the total number of reviews.
Format: stats [INDEX]
INDEX
is provided, the statistics of the flashcard identified by the provided index is shown.
If the INDEX
is omitted, FlashBack will display overall statistics for all flashcards in the current list.
Examples:
stats 2
shows the statistics of the 2nd flashcard in the list.
stats
shows the overall statistics of the current flashcard list.
Adding an alias: alias
Defines an alias for a command in FlashBack.
Format: alias cmd/COMMAND al/ALIAS
Examples:
alias cmd/delete al/d
creates an alias d
for command delete
.
d 1
shows the usage of alias d
.
Exiting the program : exit
Exits the program.
Format: exit
Saving the data
FlashBack data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
Editing the data file
FlashBack data are saved as a JSON file [JAR file location]/data/flashback.json
. Advanced users are welcome to update data directly by editing that data file.
Editing the preferences file
The user preferences are saved as a JSON file [JAR file location]/preferences.json
. Similar to the data file, advanced users are welcome to update the preferences and alias mapping directly by editing that data file.
add
to delete
, FlashBack will deem the entire alias mapping corrupted and will start with an empty alias mapping.
Review mode
Showing next flashcard : n
Moves on to the next flashcard.
Format: n
Example:
Showing previous flashcard : p
Moves back to the previous flashcard.
Format: p
Example:
Showing answer : a
Displays the answer of the current flashcard.
Format: a
Example:
Hiding answer : h
Hides the answer of the current flashcard.
Format: h
Example:
Reviewing a flashcard as correct: t
Marks that the user got the answer correct for the current flashcard.
Format: t
Example:
Reviewing a flashcard as wrong : f
Marks that the user got the answer wrong for the current flashcard.
Format: f
Example:
Quitting review mode : q
Quits the review mode and goes back to the main window.
Format: q
Example:
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 FlashBack home folder.
Command summary
Main mode command
Action | Format, Examples |
---|---|
Add |
add q/QUESTION a/ANSWER c/CATEGORY p/PRIORITY [t/TAGS]... e.g. add q/ What is the Einstein’s Equation? a/e=mc^2 c/Physics p/High t/ModernPhysics
|
Delete |
delete INDEX e.g. delete 1
|
Edit |
edit INDEX [q/NEW QUESTION] [a/NEW ANSWER] [c/NEW CATEGORY] [p/NEW PRIORITY] [t/TAG]... e.g. edit 1 a/sampleanswer p/Low
|
View |
view INDEX e.g. view 2
|
Find |
find KEYWORD [MORE_KEYWORDS] e.g. find equation
|
Filter |
filter [q/QUESTION] [c/CATEGORY] [p/PRIORITY] [t/TAG] e.g. filter q/einstein c/phy p/high t/modern or filter p/low t/formula
|
Clear | clear |
Undo | undo |
Redo | redo |
Sort |
sort OPTION ORDER e.g. sort priority -a
|
Review | review |
Statistics |
stats [INDEX] e.g. stats 4 , stats
|
Alias |
alias cmd/COMMAND al/ALIAS e.g. alias cmd/view al/v , alias cmd/delete al/d
|
List | list |
Help | help |
Exit | exit |
Review mode command
Action | Format |
---|---|
Next flashcard | n |
Previous flashcard | p |
Show answer | a |
Review a flashcard as correct | t |
Review a flashcard as wrong | f |
Hide answer | h |
Quit review | q |