PopQuiz

Mar 10, 2021

PopQuiz

Clean-architecture trivia

GitHub

A lightweight iOS quiz game that proves good engineering can be fun, built to demo Clean Architecture, the Coordinator Pattern, and UIKit polish.

PopQuiz remains a 2021 showcase prototype that teams still reference when reviewing iOS layering best-practices.

Overview

PopQuiz fetches dynamic trivia from a remote API and wraps it in a responsive, UIKit interface:

  • Browse & search a catalogue of themed quizzes

  • Play multiple-choice rounds with instant feedback and progress tracking

  • Compete on a global leaderboard scores cached offline and synced when online

  • Home-screen Widget pushes a daily fun fact straight to the user’s springboard


Features

Authentication

  • Simple email + password login flow

Quiz Browser & Search

  • Category list (e.g., NBA Quiz, 90s Movies)

  • Incremental search with URLSession calls

Quiz Play

  • Timed, multiple-choice questions

  • Progress bar (e.g., 3 / 10) and animated correctness feedback

  • End-of-round score summary

Leaderboard

  • Global top-players table pulled from API

  • Personal best badge overlay

Widget (WidgetKit)

  • Daily fun-fact widget

  • Deep-link taps straight into the app

Architecture

Clean Architecture layered with a Coordinator Pattern for navigation:


  • Coordinator routes flows: Login → Quiz List → Play → Leaderboard

  • Each layer is testable in isolation and ignorant of outer details.


Tech Stack

Area

Choice

Language

Swift

UI

UIKit

Layout

SnapKit

Networking

URLSession (completion handlers)

Reactive

Nope, callbacks :(

Persistence

Core Data (quiz cache & scores)

Widgets

WidgetKit

Architecture

Clean Architecture + Coordinator

Dependencies

CocoaPods

Styling

Custom .ttf font family




LEDGE.DIGITAL

© 2019–2025

Marko Lihter