Class-Manager

Class Manager

Location-based QR attendance check application

Usage stack

  • React Native(expo)
  • Nest.js
  • MongoDB

Rough design

  1. Create a class, then set the class name, classroom, attendance time, location, etc.
  2. Take a picture of the QR code in the classroom with a mobile app
  3. Send the location of the photographer, device ID, academic records, etc. to the server
  4. Check for duplicate location and device ID to prevent proxy attendance and fraudulent attendance
  5. Save attendance information

Proxy attendance

Implement only one attendance per device through device unique ID or application ID verification

Fraudulent attendance

  • Static QR code (on hold)

Placing a static QR code in the classroom has advantages in terms of cost and efficiency

However, there is also a vulnerability that attendance can be made anywhere within the GPS error range because the URL is exposed

As a solution, take a picture of the QR code without exposing the URL on the mobile app, and then use a verification method such as a secret key to directly access the mobile app from the classroom. Designed to allow attendance only when photographed

Preventing QR code access through abnormal paths such as web browsers

We wanted to make it lightweight so that it can be accessed through a web browser without the hassle of installing an app, but using a mobile app is inevitable to take advantage of static QR

Dynamic QR code generation

Designed so that class participants can take a picture of a QR code that includes a unique identifier for the class on-site and proceed with attendance

It is still necessary to develop a mobile app because it is difficult to access the device ID from a browser.

Sangwook You
Sangwook You

I am studying front-end and back-end technologies, and web service design.