By: Team M11-3      Since: Jan 2019      Licence: MIT
- 1. Introduction
- 2. Quick Start
- 3. Features
- 3.1. Viewing help : help
- 3.2. Adding a flashcard: add
- 3.3. Adding a Deadline/Note to a flashcard: deadlineornote
- 3.4. Listing all flashcards categorized by subjects: listorl
- 3.5. Editing a flashcard: editore
- 3.6. Finding a flashcard based on topic: findorf
- 3.7. Deleting a flashcard: deleteord
- 3.8. Deleting a subject: deleteSubject
- 3.9. Selecting a subject: selectSubject
- 3.10. Selecting a flashcard: select
- 3.11. Viewing the next flashcard: nextorn
- 3.12. Viewing the next flashcard: previousorp
- 3.13. Selecting a flashcard: sort DIFFICULTY
- 3.14. Listing entered commands: history
- 3.15. Clearing all flashcards: clearorc
- 3.16. Exiting the program: exit
- 3.17. Saving the data
- 3.18. Creating an account (coming in v2.0)
- 3.19. Logging in (coming in v2.0)
 
- 3.1. Viewing help : 
- 4. FAQ
- 5. Command Summary
1. Introduction
FlashCards is for those who prefer to use a desktop application to manage their notes. More importantly, FlashCards is optimized for those who are comfortable working with a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).
With FlashCards, you no longer need to worry about sieving through your hard copied notes for various subjects just to find the ones you want. You can have all your notes categorized neatly in one platform and be easily accessible at your fingertips!
Read on to get started!
2. Quick Start
- 
Ensure you have Java version 9or later installed in your Computer.
- 
Download the latest flashcard.jarhere.
- 
Copy the file to the folder you want to use as the home folder for this FlashCard application. 
- 
Double-click the file to start the app. The GUI should appear in a few seconds.   
- 
Type the command in the command box and press Enter to execute it. 
 e.g. typinghelpand pressing Enter will open the help window.
Other example commands you can try:
- 
list: lists all flashcards
- 
addt/Pythagoras Theorem diff/1 c/a^2 + b^2 = c^2 d/30-03-2019 s/Math
Adds a flashcard named Pythagoras Theorem under the subject Math to the list of flashcards.
It has a difficulty level of 1 with the content a^2 + b^2 = c^2 and should be memorised by 30-03-2019.
- 
delete3: deletes the 3rd flashcard shown in the current list
- 
exit: exits the app- 
Refer to Section 3, “Features” for details of each command. 
 
- 
3. Features
Command Format
- 
Words in UPPER_CASEare the parameters to be supplied by the user e.g. inadd t/TOPIC,TOPICis a parameter which can be used asadd t/Pythagoras Theorem.
- 
Parameters can be in any order e.g. if the command specifies t/TOPIC c/CONTENT,c/CONTENT t/TOPICis also acceptable.
3.2. Adding a flashcard: add
Adds a flashcard.
Format: add t/TOPIC diff/DIFFICULTY c/CONTENT s/SUBJECT
- 
TOPIC: Title of the flashcard.
- 
DIFFICULTY: Difficulty level of the flashcard’s content indicated by a positive integer 1, 2, or 3 only.
- 
CONTENT: Content of the flashcard.
- 
SUBJECT: Subject of the flashcard.
- 
Deadline/Note(optional): Deadline of the flashcard/Notes to be taken.
Examples:
- 
add t/Pythagoras Theorem diff/1 c/a^2 + b^2 = c^2 s/Math
 Adds a flashcard named "Pythagoras Theorem" under the subject "Math" to the list of flashcards. It has the content "a^2 + b^2 = c^2" and a difficulty level of "1".
- 
add t/Photosynthesis diff/1 c/A chemical reaction that takes place inside a plant, producing food for the plant to survive s/Science
 Adds a flashcard named "Photosynthesis" under the subject "Science" to the list of flashcards. It has the content "A chemical reaction that takes place inside a plant, producing food for the plant to survive" and a difficulty level of "1".
The flashcard that was just added will be displayed in the flashcards panel.
3.3. Adding a Deadline/Note to a flashcard: deadline or note
Adds a deadline or notes to the flashcard.
Format: deadline INDEX d/DEADLINE or note INDEX d/NOTE
- 
DEADLINE: Deadline of flashcard.
- 
NOTE: Important notes to be added.
Examples:
- 
deadline 1 d/12 January 2020
 Adds a deadline "12 January 2020" into the flashcard with index 1.
- 
note 3 d/Clarify with Teacher
 Adds a note into the flashcard with content "Clarify with Teacher".
In the case that a new date is to be added to a flashcard with an existing deadline or note, corrections can be made by overwriting the existing information with the same commands.
3.4. Listing all flashcards categorized by subjects: list or l
Displays an indexed list of flashcards categorized by subjects.
Format: list or l
Subject tags will be colour-coded. Same subject tags will have the same colour.
3.5. Editing a flashcard: edit or e
Edits field(s) of a specified flashcard.
Enter the index of the flashcard to edit, followed by the field(s) you wish to edit.
Format: edit INDEX [t/TOPIC] [diff/DIFFICULTY] [c/CONTENT] [d/DEADLINE] [s/SUBJECT]
- 
INDEX: Index number of the flashcard to be edited. This index number will be shown in the displayed list of flashcards in the flashcards panel. Must be a positive integer such as 1, 2, 3, …
- 
[t/TOPIC] [diff/DIFFICULTY] [c/CONTENT] [d/DEADLINE] [s/SUBJECT]: At least one of these fields enclosed in [ ] must be present.
Steps to edit a flashcard:
- 
Click on a subject in the subjects panel; or 
- 
Enter the selectSubjectcommand to select a subject (see Section 3.9.); then
- 
Use the editcommand to edit a flashcard
Examples:
- 
Editing 1 field - 
After clicking on a subject e.g. Math, flashcards that are tagged under "Math" will be displayed in the flashcards panel. 
 Next, enteredit 1 s/Scienceore 1 s/Scienceto edit the flashcard with index "1". It will replace the flashcard’s existing subject with "Science".
- 
After entering this command selectSubject English, all flashcards that are tagged under "English" will be displayed in the flashcards panel.
 Next, enteredit 2 c/The quick brown foxore 2 c/The quick brown foxto edit the flashcard with index "2". It will replace the flashcard’s existing content with "The quick brown fox".
 
- 
- 
Editing more than 1 field - 
After clicking on a subject e.g. Math, flashcards that are tagged under "Math" will be displayed in the flashcards panel. 
 Next, enteredit 1 c/Plants s/Scienceore 1 c/Plants s/Scienceto edit the flashcard with index "1". It will replace the flashcard’s existing content with "Plants" and subject with "Science".
- 
After entering this command selectSubject English, all flashcards that are tagged under "English" will be displayed in the flashcards panel.
 Next, enteredit 1 t/Brown Fox diff/1ore 1 t/Brown Fox diff/1to edit the flashcard with index "1". It will replace the flashcard’s existing topic with "Brown Fox" and difficulty level with "1".
 
- 
The edited flashcard will be updated and displayed in the flashcards panel.
3.6. Finding a flashcard based on topic: find or f
Find flashcards based on the given keyword.
Format: find KEYWORD [MORE_KEYWORDS]
- 
KEYWORD: The keyword to find flashcards with
- 
[MORE_KEYWORDS]: More than one keyword is accepted but at least one keyword is needed.
Things to note:
- 
The search is case insensitive. e.g foxwill matchFox.
- 
The order of the keywords does not matter. e.g. Pythagoras Theoremwill matchTheorem Pythagoras.
- 
The search is based on the flashcard’s topic. 
- 
Only full words will be matched e.g. Theoremwill not matchTheorems.
- 
Flashcards containing the keyword will be displayed (i.e. ORsearch). e.g.Photosynthesis Theoremwill returnPhotosynthesisandPythagoras Theoremflashcards.
Examples:
- 
find Theorem
 Returns "Pythagoras Theorem" and "Bayes Theorem" flashcards and any flashcards whose topic containsTheorem.
- 
f sun fox
 Returns any flashcards whose topic containssunorfoxsuch as "Brown fox" and "Rising sun" flashcards.
The flashcard(s) whose topic matches any of the keywords given will be displayed in the list of flashcards.
3.7. Deleting a flashcard: delete or d
Deletes the specified flashcard.
Enter the index of a flashcard to be deleted.
Format: delete INDEX
- 
INDEX: Index number of the flashcard to be deleted. This index number will be shown in the displayed list of flashcards. Must be a positive integer such as 1, 2, 3, …
Steps to delete a flashcard:
- 
Click on a subject in the subjects panel; or 
- 
Enter the selectSubjectcommand to select a subject (see Section 3.9.); then
- 
Use the deletecommand to delete a flashcard
Examples:
- 
After clicking on a subject e.g. Math, flashcards that are tagged under "Math" will be displayed in the flashcards panel. 
 Next, enterdelete 2ord 2to delete the specified flashcard at index 2.
- 
After entering this command selectSubject English, all flashcards that are tagged under "English" will be displayed in the flashcards panel.
 Next, enterdelete 1ord 1to delete the specified flashcard at index 1.
The updated list of flashcards will be displayed in the flashcards panel.
3.8. Deleting a subject: deleteSubject
Deletes the specified subject.
Format: deleteSubject SUBJECT
- 
SUBJECT: Subject to be deleted. This subject name can be found in the displayed list of subjects on the left panel. Must be a subject that is already in the subject list
Examples:
- 
deleteSubject Chemistry
 All flashcards that are tagged under "Chemistry" will be deleted.
Note This action is not reversible. The undo and redo command do not apply to the deletion of subjects.
3.9. Selecting a subject: selectSubject
Selects the subject identified by the name used in the displayed list of subjects.+
Format: selectSubject SUBJECT
- 
SUBJECT: Subject to be selected. This subject name can be found in the displayed list of subjects on the left panel. Must be a subject that is already in the subject list
Steps to select a subject:
- 
Enter the selectSubjectcommand to select a subject;
Examples:
- 
Enter this command selectSubject English, all flashcards that are tagged under "English" will be displayed in the flashcards panel.
3.10. Selecting a flashcard: select
Selects the flashcard identified by the index number used in the displayed list of flashcards.
Format: select INDEX
- 
INDEX: Index number of the flashcard to be selected. This index number will be shown in the displayed list of flashcards. Must be a positive integer such as 1, 2, 3, …
Steps to select a flashcard:
- 
Click on a subject in the subjects panel; or 
- 
Enter the selectSubjectcommand to select a subject (see Section 3.9.); then
- 
Use the selectcommand to select a flashcard
Examples:
- 
After clicking on a subject e.g. Math, flashcards that are tagged under "Math" will be displayed in the flashcards panel. 
 Next, enterselect 2to select the 2nd flashcard of the subject "Math" in the flashcards panel.
- 
After entering this command selectSubject English, all flashcards that are tagged under "English" will be displayed in the flashcards panel.
 Next, enterselect 1to select the 1st flashcard of the subject "English" in the flashcards panel.
3.11. Viewing the next flashcard: next or n
Views the next flashcard in line.
Format: next or n
- 
Selects the next flashcard and displays its content 
Steps to view next flashcard:
- 
First select the subject of the flashcards you want to toggle with selectSubjectcommand.
- 
Next, use the selectcommand (see Section 3.9) to select a flashcard first.
- 
Use next/ncommand to go to the next flashcard.
Examples:
- 
selectSubject math
 Selects all flashcards that is tagged under subject math.
 select 2
 Selects the 2nd flashcard in the filtered list.
 next
 Selects the next flashcard in the list (i.e. the 3rd flashcard); and displays the content of this flashcard.+
- 
selectSubject science
 Selects all flashcards that is tagged under subject science.
 select 5
 Selects the 5th flashcard in the list.
 n
 Displays the next flashcard in the list (i.e. the 6th flashcard); and + displays the content of this flashcard.
The next flashcard in line will be selected and its content will be displayed.
3.12. Viewing the next flashcard: previous or p
Views the previous flashcard in line.
Format: previous or p
- 
Selects the previous flashcard and displays its content 
Steps to view previous flashcard:
- 
First select the subject of the flashcards you want to toggle with selectSubjectcommand.
- 
Use the selectcommand (see Section 3.9) to select a flashcard first.
- 
Use this previous/pcommand to go to the previous flashcard.
Examples:
- 
selectSubject math
 Selects all flashcards that is tagged under subject math.
 select 2
 Selects the 2nd flashcard in the list.
 previous
 Selects the previous flashcard in the filtered list (i.e. the 1st flashcard); and displays the content of this flashcard.
- 
selectSubject science
 Selects all flashcards that is tagged under subject science.
 select 5
 Selects the 5th flashcard in the list.
 p
 Selects the previous flashcard in the list (i.e. the 4th flashcard); and displays the content of this flashcard.
The previous flashcard in line will be selected and its content will be displayed.
3.13. Selecting a flashcard: sort DIFFICULTY
Displays list of flashcards under the chosen difficulty.
Format: sort DIFFICULTY
- 
DIFFICULTY: Difficulty level of the flashcard to be selected. This difficulty will be shown in the details of each flashcard. Must be a positive integer such as 1, 2, 3 only.
Steps to select a flashcard:
- 
Click on a subject in the subjects panel; or 
- 
Enter the selectSubjectcommand to select a subject (see Section 3.9.); then
- 
Use the sortcommand to filter the list of flashcards with selected difficulty level
Examples:
- 
After clicking on a subject e.g. Math, flashcards that are tagged under "Math" will be displayed in the flashcards panel. 
 Next, enterselect 2to select the 2nd flashcard of the subject "Math" in the flashcards panel.
- 
After entering this command selectSubject English, all flashcards that are tagged under "English" will be displayed in the flashcards panel.
 Next, enterselect 1to select the 1st flashcard of the subject "English" in the flashcards panel.
3.14. Listing entered commands: history
Lists all the commands that you have entered in reverse chronological order.
Format: history
| Pressing the ↑ and ↓ arrows will display the previous and next input respectively in the command box. | 
3.15. Clearing all flashcards: clear or c
Clears all flashcards.
Format: clear or c
Examples:
- 
clear
 All flashcards that are in the FlashBook will be deleted.
Note This action is not reversible. The undo and redo command do not apply to the clearing of flashcards and subjects simultaneously.
3.16. Exiting the program: exit
Exits the program.
Format: exit
3.17. Saving the data
FlashCards data is saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.
3.18. Creating an account (coming in v2.0)
Creates an account for the user.
This feature will support multiple users and all operations carried out will be tagged to the same user account.
3.19. Logging in (coming in v2.0)
Enables users who already have an account to log in.
This feature will support multiple users and all operations carried out will only pertain to the current user account.
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 FlashCard Book folder.
5. Command Summary
- 
Add : add t/TOPIC diff/DIFFICULTY c/CONTENT d/DEADLINE s/SUBJECT
 e.g.add t/Pythagoras Theorem diff/1 c/a^2 + b^2 = c^2 d/30-03-2019 s/Math
- 
Add a Deadline/Note : deadline INDEX d/DEADLINEornote INDEX d/NOTE
 e.g.deadline 3 d/12 December 2019ornote 2 d/Clarify with Teacher
- 
Clear : clearorc
- 
Delete : delete INDEX
 e.g.delete 3ord 3
- 
Delete Subject : deleteSubject SUBJECT
 e.g.deleteSubject Chemistry
- 
Edit : edit INDEX [t/TOPIC] [diff/DIFFICULTY] [c/CONTENT] [d/DEADLINE] [s/SUBJECT]
 e.g.edit 2 s/Scienceore 2 c/The quick brown fox
- 
Find : find KEYWORD [MORE_KEYWORDS]
 e.g.find Theoremorf sun fox
- 
Help : help
- 
History : history
- 
List : listorl
- 
Next : nextorn
- 
Previous : previousorp
- 
Select : select INDEX
 e.g.select 2
- 
Select Subject : selectSubject SUBJECT
 e.g.selectSubject Math
- 
Sort : sort DIFFICULTY
 e.g.sort 2