PopQuiz
Mar 10, 2021

PopQuiz
Clean-architecture trivia
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 |





