Challenge

For this intermediate challenge, implement a Flutter quiz app with single and multiple-choice questions:

Open preview in a separate page

Starter Project

You can grab the starter project for this challenge here:

c008_quiz_app_starter.zip
v0.1.0, updated: 2025-02-20

Check the README for how to use it.

Primary Goals

  • Implement any incomplete or missing UI components
  • Support both single and multiple-choice questions
  • Implement separate “submit” and “verification” modes so the user can see if the answer is correct or not
  • Bind local state to the UI
  • Use callbacks to mutate state and rebuild the UI when needed

Stretch Goals

  • Show a confetti animation when the quiz is finished and all the answers are correct
  • Add some animations
  • Add a timer that allows 10 seconds for each question

What You Will Learn

  • How to work with StatefulWidget
  • How to work with RadioListTile and CheckboxListTile widgets
  • How to transform and map local state to the UI
  • How to use UI callbacks to mutate state using setState
  • How to work with the confetti package

Official resources from Flutter.dev and pub.dev:

Questions? Let's chat