All work

TCard

An Android app that puts the University of Toronto student card on your phone, built for CSC207 Software Design.

Course
CSC207 Software Design, University of Toronto
Role
Developer and team lead
Built with
Java, Android, SQLite, SharedPreferences, Git
Dates
Sept to Dec 2021
Three phones on a white surface showing the TCard app’s sign-in, UCheck and result screens

Overview

Every University of Toronto student is issued a TCard. It opens libraries and campus buildings, pays for meals and printing, and works as ID across the university.

For our CSC207 final project, my team built an Android app around the same services, following clean architecture and SOLID design principles. It stores user data on the device with SQLite and SharedPreferences, and uses the Android API for its interface.

I led the team, and we leaned on object-oriented design and polymorphism to keep the app easy to extend.

What I built

  • A UCheck flow where students complete the COVID-19 screening and see their result
  • Local sign-in storage with SQLite, so returning users can log in faster
  • A QR code feature that can read, upload and create codes
  • Unit and integration tests with mock objects, reaching 75% code coverage

Screens

The My Virtual TCard sign-in screen, with username and password fields
Sign in
The UCheck status check-in screen, with COVID-19 screening questions
UCheck screening
A green UCheck result screen telling the student they can come to campus
Screening result