I am interested in developing a simple vocabulary flashcard application for iphone. The application contains numerous stacks and each of them has an audio (mp3 files) and definition components.
There will be four navigation buttons that tracks the level of difficulties as the user defines it.
Each time a stack is loaded, the application will retrieve the vocabulary from the database and display them in random order. The selection of the vocabulary will follow a simple pre-determined algorithm.
You do not have to provide the database.
Detail design information will be provided.
## Deliverables
The requirement is as followed:
1/. Vocabulary are organized into stacks. A drop down box to select a stack.
2/. Each stack contains up to 50 vocabularies that has audio and definition components.
3/. The audio component contains files in mp3 format that will play sequentially when play button is pushed.
4/. The definition of the vocabulary is hidden behind the "Show" button and only shown when the button is bushed.
5/. Four controlling buttons to navigate vocabulary list. "easy", "medium", "difficult", and "exit"
6/. With "easy" button, the vocabulary will be hide away from the stak next time it is load for x number of days as defined in "time_to_repeat_easy_days" (default 9days)
7/. With "medium" button, the vocabulary will be hide away from the stak next time it is load for x number of days as defined in "time_to_repeat_medium_days" (default 5 days)
8/. With "hard" button, the vocabulary will be hide away from the stak next time it is load for x number of days as defined in "time_to_repeat_easy_days" (default 0 days)
9/. With "exit" button, the gadget goes back to the initial page with stack selection.
10/. Four counters : 1=number of visible vocabulary on the stack. 2=number of "easy" vocabularies during the exercise, 3= number of "medium" vocabularies during the exercise, 4=number of "hard" vocabularies during the exercise.
11/. Update and show these counters on the top of the gadget as user navigate.
12/. If the stack contain no more vocabulary for the date, show message "No vocabulary available today".
13/. When the user reaches the end of the stack, show message "End of the stack" and a button to go back to stack selection page.
I have the database and will populate the database myself once the application is completed. You will only have to provide a few dummy data.