Open JasonBarahan opened 2 months ago
It doesn't have to be themed after a passport - anything that has stamps (like train tickets) could work too!
https://www.heroku.com/pricing or we can use netlify
Repo is live: https://github.com/cssu/orientation-stamp-rally
Description
Implement a QR-code based virtual stamp rally program. This will be hosted on a specific subdomain of our website and will be used for orientation. Every time a user attends a mini-event, workshop, or visits a booth at our clubs fair, they can scan a QR code to get a stamp in their books. Once they obtain a minimum number of stamps, they can go to the CSSU lounge to obtain a prize (like a free ice cream sandwich).
Rationale
Stamp rallies are a "classic social team move" (quoted from Charles) to boost engagement. This was previously discussed in an executive meeting and there is interest in implementing it for orientation.
The turnaround time is 2 months, I don't know whether it is possible, but I'm hoping this is. We will probably need graphics to hop on board this project if feasible.
Implementation
This is a preliminary implementation and is subject to discussion during the meeting.
Logistics
We'll create a separate repo on this and host the finished site on
orientation.cssu.ca
. I'll take care of setup.Authentication
We were thinking of having students authenticate using their utorID. To avoid any logistical issues with obtaining access to idpz what we could do is:
Alternatively we could implement our own login system.
Obtaining QR codes
If we choose to take the static QR code route (one QR code for each booth/event) we need to make sure people don't take photos of the QR code to cheat the system. We could add a secret question (or a couple of rotating secret questions) unique to each booth or club and have people at the booths answer them to get that QR code marked.
If we choose to take the dynamic QR code route... (yet to discuss)
Data persistence
I was thinking of using a dynamic client side rendered approach. We'd (probably) need a small database to store information on booths that a user has visited.
TRUE
if they have scanned a QR code before,FALSE
if not.FALSE
the stamp associated with the QR code is greyed out on the user's dashboard. IfTRUE
the full coloured stamp is displayed. The stamp visuals are processed client sideRewards redemption
We need to decide on the conditions where the reward is given, and also implement checks to ensure that people do not lie and attempt to get more than one reward. One way to approach this is:
cssu.ca
website (or something else)