Skip to content
Koh Jia Xian edited this page Jul 12, 2022 · 7 revisions

App and "Sprint" info


General Flow
	EACH User has:
		- username, password, id
		- List of language packs (which contain list of decks)

	EACH language pack has
		- id
		- Masterlist of cards
		- Masterlist of notes
		- List of decks, which contain their own list of cards and notes

	EACH deck has
		- id
		- List of cards
		- List of notes

	EACH Card has
		- id
		- Front/back title/description
                    - Front/Back CardFace Type (to display different formats)
                    - List of decks where it appears in
                    - (KIV) #TimesIncorrect : #TimesTested ratio (For flashcard tests)


	EACH Note has
		- id
		- Title
                    - Contents
                    - List of decks

Each pack has 3 main pages: "My decks", "My Notes" and "My Cards"

  • Notes and Cards show the masterlist of the notes/cards respectively.
  • Decks show a list of decks
  • Clicking a deck shows a list of cards/notes stored in the deck
  • Enable searching/filtering etc

  • Notes/Cards/Decks can be deleted/added/edited wherever they are listed.
  • Info of deletion in the masterlist has to be trickled down (up?) to the Decks, hence the lazy deletion implementation
  • Cards/Notes can be added to multiple decks; the main rationale for not storing deck ids within cards/notes.

Sprint 3: Decks and Cards [Completed, backlog]

  • Overflow in deck (cards also but need wrap)
  • Delete all cards in deck? Dialog
  • Make deckManager a flippable card when u turn the page LOL

Sprint 4: Sidebar

  • Sidebar - Temporary 'Test' button to load the deck into the Test component, - Associated Notes - Save button?
  • Notes, edit sidebar to cater to notes, Your notes
  • Testing component
    • Test with x amount of cards
    • Use better algo than random?

Sprint 5-6: Language Set, UX

Sprint 6 and beyond:

  • Profile view, viewing others' decks
    • Tracking profile statistics
  • Better view on different devices (https://www.w3schools.com/css/css3_mediaqueries.asp)
  • Anki import/export
  • Creating a card allows for common languages keyboard options that are harder to type (Hanyupinyin, accented letters, etc)