Pull Request Title: 97486751
This project is a web-based attendance management system designed to track student attendance in real-time. It uses a Flask web server to manage student and staff data, and a separate Python script to process attendance records. The system is ideal for classrooms or any setting where automated attendance tracking is needed.
- Real-time Attendance Tracking: The system marks attendance as present or late based on when a student's ID is scanned.
- Web-based Interface: A simple web interface for managing students and staff, and for viewing attendance records.
- SQLite Database: All data is stored in a local SQLite database, making it easy to set up and manage.
- Dynamic Subject Tables: Attendance tables are created dynamically for each subject, allowing for flexible class management.
main.py: The main Flask application that runs the web server and handles all web-related functionalities.Scanner.py: A script that processes attendance records in real-time by monitoring a log file.Attendance.db: The SQLite database file where all student, staff, and attendance data is stored.templates/: This directory contains all the HTML templates used for the web interface.request_logs.txt: A temporary file used to pass information from the web server to theScanner.pyscript.
- Python 3
- Flask
- SQLite3
-
Clone the repository:
git clone <repository-url> cd <repository-directory>
-
Install dependencies:
pip install Flask
-
Start the Flask web server:
python main.py
The server will start on
http://<your-local-ip>:5000. -
Run the attendance scanner: In a separate terminal, run the
Scanner.pyscript:python Scanner.py
-
Add Staff:
- Navigate to the "Add Staff" page to add new staff members and the subjects they teach.
-
Add Students:
- Go to the "Add Students" page to register new students with their details.
-
Take Attendance:
- When a staff member starts a session from the main page, the
Scanner.pyscript begins monitoring for student check-ins. - Students can "check-in" by having their roll number sent to the server (simulated by accessing
http://<your-local-ip>:5000/<roll-number>). - The system marks attendance as "Present" or "Late" based on the time of check-in.
- When a staff member starts a session from the main page, the
-
View Attendance:
- Attendance records can be viewed by navigating to the subject-specific pages.