This project won first place at the Florida FBLA state leadership conference. The presentation slides can be viewed here.
Quizza comes with 5 local sample quizzes. Users can create new quizzes and publish them online through the app. Offline quizzes can also be created without publishing online. These quizzes allow for FBLA members to spread and gain knowledge about FBLA competitive events, parliamentary procedure, and other FBLA details. Quizzes can be played online with friends or strangers to create a competitive atmosphere. The goal of this app is to make it fun and easy for students and FBLA members to learn on the go.
- Creatable user accounts
- Online and offline quiz creation and battles
- Play online in realtime matches against friends
- Editable quizzes with an in-app quiz editor
- Instant feedback on correct and incorrect answers
- An overview screen after finishing a quiz, displaying all questions and answers
- Easy bug reports in case the user notices a bug with the application
- Copy the application binary (Quizza.apk) to an Android device running Android 5.1 or up
- Install the APK file on the device
- Open Quizza from the application launcher
- Register an online account or login offline
- Explore the application
- Install Android Studio
- Install Apache Maven
- Run
mvn install
withinsource/quiz-game-server/quiz-game-client
- Open Quiz.iml in the
source/quizza-android
folder - Explore the application
- View the license
Quizza can be installed on an Android Device (Android 5.1 and up) by using the provided .apk file.
./gradlew :base:bundleRelease
Applications can also be generated using Android Studio by opening the project file (Quiz.iml
or build.gradle
)
- Android Studio - used to create professional Android applications
- Adobe Illustrator - used to create icons and images
- Gradle - used to automate builds and manage dependencies in an efficient manner
- Git SCM - used for version control
- Apache Maven - used to manage dependencies for the Quiz-Game-Server
- Kotlin - used to structure and architect apps to avoid common code errors
- AndroidX Support Library (includes androidx.appcompat:appcompat, androidx.constraintlayout:constraintlayout, androidx.cardview:cardview, androidx.lifecycle:lifecycle-extensions) - used to create Android applications with support for multiple APK versions
- Google Design Support Library (includes com.google.android.material:material) - used to create Android applications with a consistent look and feel
- Retrofit includes (com.squareup.retrofit2:retrofit, com.squareup.retrofit2:converter-gson) - used for interfacing with a web service
- Picasso includes (com.squareup.picasso:picasso) - used for loading images from a web service
- Google Play Services Authentication includes (com.google.android.gms:play-services-auth) - used for authenticating users using Google Services
- Android Confetti includes (com.github.jinatonic.confetti:confetti) - used for adding interactivity and engaging the user visually with particle effects
- Kotlin - used for null-safety and new language features
- RxJava2 and RxAndroid - used for event-based programming
- Roxie - used as a helper for a MVI-based (model-view-intent) architecture
All screenshots can be found in PDF form at the root of the submission.