Skip to content

edwinbosire/citizenship_test_flutter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UK Citizenship Test (Life in the UK Test)

The Life in the United Kingdom test is a computer-based test constituting one of the requirements for anyone seeking Indefinite Leave to Remain in the UK or naturalisation as a British citizen. It is meant to prove that the applicant has a sufficient knowledge of British life and sufficient proficiency in the English

This app is an exam preparation aid for this test. It has been implemented in flutter and can be run on both iOS and Android

ios app banner

I've been here before, I once wrote this app in a weekend using React-Native read about it here. I've also written it in Objective-c and Swift, but here we are again, maybe this time i will actually finish it.

Attack plan

  1. Start a quiz and complete and attempt all questions
  • scroll back to answered questions and not go forward
  • scroll to the next question automatically when the current one is answered correctly
  • show hint for a questions once you've answered it incorrectly
  • if a user requests for the hint and no answeres selected, mark the question as wrong, then display the hint
  • allow the user to save a question in favourites
  • stop users from amending previous questions
  1. Present results page once all questions are answered.
  • show a score in percentage that is correct answers / total questions
  • show a list of answered questions, highlighting questions users have selected overlayed with the correct colors
  1. Allow users to see a list of possible quizes, if a quiz has been attemted, show the score

*** We need a way to persist data, we can use UserPreferences for now, or upgrade to SQLite database ***

  • Read and parse JSON file containing ~2,000 questions
  • Create 31 unique tests that the user can take
  • Each question to have reference to the reading material, this would help with revealing the hit
  1. Allow users to read the revision material (Book)
  • table of content with progress bar
  • allow user to dive deeper into the content of the book
  • track reading progress

Nice to have:

  • Have ability to categorise questions per book chapter
  • Show scores per book section, this could help the user focus on a particular topic
  • Flash card with notes derived from the book.

Technicals

  • Move all relevant state from the model objects to ExamViewModel and QuestionViewModel, this will allow us to reset an exam
  • Employ the use of Provider package to accomplish the above.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

About

Life in the UK test implemented in flutter

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages