Giter VIP home page Giter VIP logo

citizenship_test_flutter's Introduction

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.

citizenship_test_flutter's People

Contributors

edwinbosire avatar

Stargazers

 avatar cik.hustle avatar Yuang Li avatar Samuel Abebe avatar Wade avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.