Skip to content

Mohamed-Emad126/FCIAttendance

Repository files navigation

FCI Attendance

FCI Attendance is an Android application designed to simplify the process of student attendance tracking using QR codes. The application is built on the Google Cloud Project and uses the Google Sheets API for real-time tracking without the need for a server.

Features

  • Track attendance records in a user-friendly interface.
  • Export attendance records to a CSV file.
  • Delete specific attendance records.
  • Persist data across app launches.
  • Asynchronous data handling with Kotlin Coroutines.
  • Native-level performance with Android NDK.
Attendance.mp4

Setup

  1. Google Cloud Project: The application is built on a Google Cloud Project. Make sure to create a credential for the Android application with the SHA1 and the package name to ensure the application works without any issues.

  2. QR Generation: The QR codes for the students are generated using Python, pandas, and qrcode. The data in the QR code is encrypted using the AES algorithm. The same key and IV used for encryption are used for decryption in the Android application.

  3. Android Application: The Android application reads the QR code using the Google code scanner and decrypts the data using Bouncy Castle cryptography. The decrypted data is then sent to the Google Sheets using the Google Sheets API.

Built With

  • Kotlin - The main programming language used.
  • Java - Used in some parts of the project.
  • C - Used in some parts of the project.
  • Python - Used to generate the QR codes for each student and create the Excel file with the QRs.
  • JavaScript - Used on the Apps Script of the registration form to add the verified responses to the specific sheets they want.

Gradle Libraries

About

Unofficial Attendance app for FCI ZU

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published