By: CS2103 T14-3
Since: Nov 2019
License: MIT
- 1. Introduction
- 2. Quick Start
- 3. Features
- 3.1. Adding new flashcards
- 3.2. Listing all flashcards
- 3.3. Listing all flashcard by tags
- 3.4. Listing all tags
- 3.5. Editing a flashcard
- 3.6. Quiz mode
- 3.7. Quiz Tag mode
- 3.8. Flip a flashcard
- 3.9. End quiz mode
- 3.10. Skip Flashcards in Quiz
- 3.11. Display current progress
- 3.12. Delete a flashcard
- 3.13. Finding a flashcard
- 3.14. Undo & Redo
- 3.15. Exiting the program
- 3.16. Saving the data
FlashMind helps students to use their time breaks to memorize things like vocabulary and some general knowledges, especially those who prefer command line interface (CLI) over clicks. Everything is organized into flashcards, each contain one question. Users can also tag the flashcards to group them and see their progress over time through statistics.
-
Ensure you have Java
11
or above installed in your Computer. -
Download the latest
FlashMind.jar
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.
-
Type the command in the command box and press Enter to execute it.
e.g. typinghelp
and pressing Enter will open the help window. -
Some example commands you can try:
-
list
: lists all flashcards -
add q/How long is Mount Blanc Tunnel? a/11611m d/An amazing tunnel on the boarder of France and Italy
: Add a flashcard about Mount Blanc Tunnel -
delete
3
: deletes the flashcard with index 3 on the listed flashcards. -
exit
: exits the app
-
-
Refer to Section 3, “Features” for details of each command.
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/How long is Mount Blanc Tunnel?
. -
All commands are case sensitive and should be in its lowercase.
-
Items in square brackets are optional e.g
q/QUESTION [t/TAG]
can be used asq/How long is Mount Blanc Tunnel? t/geography
or asq/How long is Mount Blanc Tunnel?
. -
Items with
…
after them can be used multiple times including zero times e.g.[t/TAG]…
can be used ast/geography
,t/geography t/civil engineering
etc. -
Parameters can be in any order e.g. if the command specifies
q/QUESTION a/ANSWER
,a/ANSWER q/QUESTION
is also acceptable. -
To view all the available commands that the user can use. Use help command
Format:help
Add a new flashcard and specify its question, definition, tags, choices and answer.
Format: add q/QUESTION d/DEFINITION [t/TAG]… [c/CHOICE]… a/ANSWER
-
QUESTION, DEFINITION and ANSWER must be provided while creating a flashcard, tags and choices are optional.
-
If there are no choices specified in the flashcard, the system will generate a short answer flashcard. Otherwise, the system will generate an MCQ flashcard.
-
Note that during the quiz mode, to answer a short answer flashcard correctly, you must input an answer exactly match answer you typed while this flashcard is created. Thus, be sure to provide enough information in QUESTION and DEFINITION for you to figure out the exact correct answer.
-
Note that while creating an MCQ flashcard, the answer is the input for your correct choice, not just a number. If the answer you input does not match any of the choices, the system will tell you this flashcard is invalid. Please refer to the following examples for a better understanding.
Examples:
-
add q/What is the tallest mountain in the world? d/This mountain is on the boarder of China and Nepal. a/Mount Everest
: Creates a new short answer flashcard with the given question, definition and answer. -
add q/What is the tallest mountain in the world? d/This mountain is on the boarder of China and Nepal. c/Mountain Everest c/Mount Blanc c/Shkhara c/Bukit Timah a/Mountain Everest
: Creates a new MCQ flashcard with the given question, definition choices and answer. -
add q/What is the tallest mountain in the world? d/This mountain is on the boarder of China and Nepal. c/Mountain Everest c/Mount Blanc c/Shkhara c/Bukit Timah a/Alps
: Since the answer you input does not match with any of the choices, the system will generate an error message.
Shows a list of all flashcard under given tag names. If there are no flashcards under the input tag name, you should see
an empty flashcard list being displayed. Note you can list multiple tags at the same time.
Format: listbytag t/TAG…
-
At least on tag needs to be specified after keyword
listbytag
, otherwise the system will show an error message.
Examples:
-
listbytag t/mathematics
: List all flashcards under the tag mathematics. -
listbytag t/mathematics t/geography
: List all flashcards under the tag mathematics OR the tag geography.
Edits an existing flashcard in the address book.
Format: edit INDEX [q/QUESTION] [a/ANSWER] [d/DEFINITION] [t/TAG]… [c/CHOICE]…
-
INDEX is the index of this target flashcard in the displayed list.
-
At least one of the optional fields must be provided.
-
Existing values will be updated to the input values.
-
Note that while updating choices or tags, they are updated together. This means, assume you have 4 choices for flashcard number 2, then you typed
edit 2 c/Mount Blanc
, then there will be only one choice left for flashcard number 2, which is Mount Blanc. The same applies when editing tags. -
While editing the answer for an MCQ flashcard, still ensure that the updated answer matches any one of the choices.
Examples:
-
edit 5 q/What is the tallest mountain?
Edits the question of the card with index 5 to "What is the tallest mountain?". -
edit 5 a/Mount Everest
Edits the answer of the card with number 5 to "Mount Everest".
Starts a quiz using a particular flashcard index or with a with an optional time limit with units in seconds.
Format:
Format: quiz INDEX [s/TIME_LIMIT]
-
Start a quiz using the flashcard with given index.
-
User can answer the flashcard using the
flip
command (see 3.8). -
If the quiz is not answered within the time limit, FlashMind will skip the quiz and mark it as wrong.
-
If the quiz time is not specified, the default time limit will be 15 seconds.
Examples:
-
quiz 8
: start a quiz on the flashcard number 8 with a default time limit of 15 seconds. -
quiz 8 t/10
: start a quiz on the flashcard number 8, given time limit 10 seconds.
ℹ️
|
Once a quiz starts, users will be unable to use other commands such as add, list or delete.
To exit quiz mode, either answer the flashcard or use end
|
Starts a continuous quiz on a tag or a series of tags and an optional time limit with units in seconds.
Format:
Format: quiztag t/TAG… [s/TIME_LIMIT]
-
Starts a continuous quiz on all flashcards in the given tags
-
Users can continuously use the
flip
command to answer the series of flashcards (see 3.8). -
If the quiz time is not specified, the default time limit will be 15 seconds.
Examples:
-
quiztag t/mathematics t/geography
: start a quiz on all the flashcards with tagmathematics
andgeography
. -
quiztag t/mathematics s/30
: start a quiz on all flashcards with tagmathematics
with each quiz a time limit of 30 seconds.
ℹ️
|
Only usable in quiz mode (i.e after a quiz or quiztag command) |
Format: flip ANSWER
-
Short answer flashcards will accept any answer.
-
MCQ flashcards will only accept numbers as an answer. The number must match an index of the choices.
Example 1: MCQ Flashcard
After quiztag t/geography
, the flashcard below is shown:
What is the tallest mountain in the world?
Definitions: The answer is Mount Everest.
Tags: [geography]
Choices:
-
Mount Fuji
-
Mount Everest
The user can type flip 2
to answer the flashcard correctly.
Example 2: Short Answer Flashcard
What is the lowest playing register of the clarinet called?
Definitions: Range of E3 to Bb4
Tags: [music]
The user will then type flip Chalumeau
to answer the flashcard correctly.
After using the flip
command, users should receive feedback on whether they’ve answered the flashcard correctly.
If the answer was wrong, the correct answer will be provided. The scores of the flashcard will then be updated accordingly.
ℹ️
|
Only usable in quiz mode(i.e after a quiz or quiztag command). |
Format: end
-
Used to end a quiz if the user wants to stop the quiz without answering the flashcard
ℹ️
|
Only usable in quiz mode (i.e after a quiz or quiztag command) |
Format: skip
*Used to skip a flashcard during a quiz if the user does not know the answer or want to answer
Shows the current progress of a set of flashcards.
Format: stats [t/TAG]…
-
Statistics shown include number of completed cards and accuracy
-
Multiple TAG’s can be added to combine statistics of multiple sets
-
If no TAG is provided statistics of all the cards will be shown
Examples:
-
stats t/biology
: Displays the progress of a the flashcards tagged with Biology.
Deletes the specified flashcard from the list of all flashcards.
Format: delete INDEX
-
Deletes the flashcard with the specified
INDEX
.
Example:
-
delete 5
: Removes the flashcard with index 5 in the list.
Find a flashcard based on the keyword in its question, definition or answer.
Format: find KEYWORD
-
The key word must not be empty.
Example:
-
find Blanc
: Find flashcards whose question or answer contains string "Blanc".
Suppose you delete, add or edit a flashcard with a mistake, you can use undo to bring yourself back to the previous stage.
If you did an Undo command by mistake, you can also use Redo command to undo an Undo Command. Note that Undo and Redo can only take affect
for flashcard modifications, it cannot undo your quiz result.
Format: Undo
, Redo
.
Exits the program.
Format: exit
Special Notation: We strongly recommend you to exit FlashMind using exit
command instead of directly closing the window.
The reason is, if you directly close the window, you might lose some of the progress you made in this session. That is, some of the
quiz scores might not be saved. Through exit
command, all of your quiz results will be saved properly.
Flashcards are saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.
After the data is saved, do not modify any of the Json files manually. You might end up screwing up all the information stored in them.
If unfortunately, you did manually change the Json file and found the FlashMind operating with any problem, the only suggestion we
can give you is to delete the file flashcardlist.json, so the system will start with default flashcard list again.