backend

Back-end Structure

The backend is organized into the following main components:

  • app.py: The entry point for the Flask application.
  • config.py: Configuration settings for the application.
  • components/: Contains modularized backend logic, such as worker management, entry logging, and camera verification.
  • database/: Contains database models and schemas for data validation and serialization.
  • tests/: Unit tests for the backend components.

Functions

The back-end is responsible for 2 core modules:

Employee Camera Verification

Verification of employee (worker) entry into the building. Works by implementing a 2 factor authentication by checking the face biometry and the QR code provided to the worker. Any violation gets logged, notably:

  • Mismatch of face and QR code data
  • Multiple QR codes detected
  • Multiple persons (faces) detected
  • Expired QR code

Admin Panel

Handles all administration tasks related to the camera verification behind an intuitive web dashboard.

  • Creation of entry permits
  • Invalidation of entry permits
  • Changing details of existing entry permits
  • Viewing entry logs, advanced filtering by employee, event type, event code
  • Generating PDF/JSON entry log reports
 1'''
 2## Back-end Structure
 3
 4The backend is organized into the following main components:
 5
 6- **`app.py`**: The entry point for the Flask application.
 7- **`config.py`**: Configuration settings for the application.
 8- **`components/`**: Contains modularized backend logic, such as worker management, entry logging, and camera verification.
 9- **`database/`**: Contains database models and schemas for data validation and serialization.
10- **`tests/`**: Unit tests for the backend components.
11
12## Functions
13The back-end is responsible for **2** core modules:
14
15### Employee Camera Verification
16Verification of employee (worker) entry into the building. Works by implementing a 2 factor authentication by checking the face biometry and the QR code provided to the worker. 
17Any violation gets logged, notably:
18- Mismatch of face and QR code data
19- Multiple QR codes detected
20- Multiple persons (faces) detected
21- Expired QR code
22
23### Admin Panel
24Handles all administration tasks related to the camera verification behind an intuitive web dashboard.
25- Creation of entry permits
26- Invalidation of entry permits
27- Changing details of existing entry permits
28- Viewing entry logs, advanced filtering by employee, event type, event code
29- Generating PDF/JSON entry log reports
30
31
32'''