The quiz should consist of at least 6 questions.
The questions should require a mix of at least three different types of answers, e.g. multiple choice (one correct answer), select all correct answers, numerical, true/false, embedded answers.
There should be a hint available on demand for most questions. The hint is not shown when the question is initially shown but can be shown on demand. You can choose how to implement this.
The questions should be displayed one question to one page. The user should be able to navigate between the questions.
You can use local storage to store the answers provided by the user.
The user should be made aware of any unanswered questions before the user completes the quiz.
After the user has completed the quiz a feedback page should provide a summary of all answers given, their correctness and an overall score. Then the user should be asked whether they want to take the quiz again.