Skip to content

Latest commit

 

History

686 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Queasy - Mobile Quiz App

Queasy is a Mobile Quiz Application developed by a group of 9 students (referenced at the bottom of the README.md) as part of a Software Project class in the Winter Semester 22/23.

University: Technische Hochschule Ulm / University Of Applied Sciences Ulm
Location: Ulm, Germany
Professor: Baer, Klaus, Prof.Dr.-Ing.
Time Frame: WS 22/23

Prerequisites

Develop an interactive quiz app:

  • Possibility to edit questions & answers
  • Sign in, choose nickname
  • Play quiz via mobile or browser
  • Leaderboard
  • Technology: Open To Preference

Possibility to Edit Questions & Answers

  • The user can create a Question
  • The user can add Answers to his own Question
  • The user can edit a Question that was committed to the Application by himself
  • The user can edit an Answer comitted to one of his own Questions

Sign in, choose nickname

  • The user can register to the application using the traditional way of providing information
  • The user can choose a nickname while registering
  • The user can sign into his own account by using the information provided at registration

Play quiz via mobile or browser

  • The user can access the App through a web browser or a mobile device
  • If the user is able to access the App, he is supposed to be able to use it

Leaderboard

  • The App is supposed to have a Leaderboard for the best performing users
  • The leaderboard shows the ranking of the top users and their nicknames & points

Technology Used

Dart

  • Used to develop the backend
  • In Combination with Flutter used to develop the frontend
  • Chosen because of good implementation with firebase (both by Google)

Flutter

  • Used to develop the frontend in combination with Dart
  • Allowed to develop for Web, iOS and Android at the same time

Firebase

  • Used as the database for the application

Chosen because:

  • Free
  • Good implementation with Dart
  • Easy to use
  • Extra features like: authentication, security, reset emails, free deployment, etc.

Android Studio

  • Most commonly used IDE in the development process
  • Allowed for easier testing/development due to implemented features (i.e. Emulators)

xCode

  • Less used IDE in the development process
  • Used to manage iOS packages
  • Used to change iOS specific configuration files

Figma

  • Used to design the UI of the App

Asana

  • Used to manage tasks
  • Used for common organization of the project

Views And Features

Log In View

  • The user can log in with their data that was previously registered
  • The user can reset their password if forgotten
  • The user can log in with a previously registered Google or Facebook account
  • The user can go to Register View

Register View

  • The user can register by using the traditional way of providing information (Email, Username, Password, cPassword)
  • The user can register by using a Google or a Facebook account

Home View

  • The user can go to the Public Tournaments View
  • The user can open the Join Quiz View
  • The user can go to the My Quizzes View
  • The user can navigate the app through a navigation bar at the bottom of the screen

Public Tournaments View (Choose Category)

  • The user can choose a category to play a public quiz in
  • Choosing a category will send the user to the Quiz View

Quiz View

  • The user can play a selected quiz
  • In the top left corner is a counter of 15 seconds - prevents users from cheating & allows more accurate points calculation
  • Top center of the screen is a point counter, which tells the user how many points they have at the moment
  • For each correct answer the user is awarded 5 points + the time left for that answer
  • For each incorrect answer the user is deducted 2 points
  • At the end of the quiz, the user is redirected to Statistics View

Statistics View

  • At the end of every quiz, the user is redirected to this view
  • The view shows to the user how they performed in the quiz
  • After the user clicks Continue they are redirected back to the Home View

Join Quiz View (Pop Up)

  • The user is promted with a pop up box and the text "Enter Key"
  • The user can input a private key of a quiz and click join or cancel
  • If the user clicks join and the key is correct, they will be redirected to the Quiz View with the chozen quiz
  • If the user clicks join and the key is incorrect, the user is notified with a text "Invalid Quiz Key"
  • If the user clicks cancel, the App goes back to Home View

My Categories View

  • The user can create a category by clicking the plus in the top right corner
  • Clicking the pop up will promt the user with a pup up requesting a name
  • After giving a name to the new category the user can confirm or cancel the creation of a new category
  • The user can enter their category to Category View inside where questions can be seen/edited or a quiz created

Category View

  • The user can edit his questions and answers
  • The user can create a new quiz with random/chosen questions (with a custom name)
  • The user can delete the category

My Quizzes View

  • User can see his own quizzes
  • User can share or delete a quiz by clicking on the "..." on the right
  • User can enter inside of the Quiz Management View to play/delete a quiz

Quiz Management View

  • The user can see their quiz in detail
  • The user can delete the quiz
  • The user can play the quiz

Leaderboard

  • The user can view the global tournament (All categories combined) leaderboard top 10
  • The user can view the particular tournament category top 10

Profile

  • The user can view their profile, bio, profile picture, statistics
  • The user can change their profile picture, bio, email, password, First and Last name
  • The user can change their theme to dark or light
  • The user can delete the account

Authors

Backend

Frontend

Design

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages