Attendance-Tracking-using-Face-Recognition Tailwind Templates

Attendance Tracking Using Face Recognition

It's a web application crafted with HTML, Tailwind CSS, JavaScript, Node.js, EJS, Express.js, MongoDB, Passport.js, and Face-api.js, aimed at enhancing student attendance management through innovative features like face detection and robust user authentication.

StreakTrack

StreakTrack is a web application designed to manage student attendance using face detection and user authentication. This application allows for seamless student registration, attendance tracking, and data management, providing an efficient way to maintain accurate attendance records.

Features

  • User Authentication: Secure login, registration, and logout functionality.
  • Student Registration: Allows students to register by uploading three images for face recognition.
  • Attendance Tracking: Uses face detection technology to track and record student attendance.
  • Dashboard: View registered students and their current attendance status.
  • Edit Dashboard: Manually mark attendance for students when necessary.
  • Download Attendance Data: Export attendance records as an Excel sheet.

Technologies Used

  • Node.js: Server-side JavaScript runtime.
  • Express.js: Web application framework for Node.js.
  • MongoDB (Mongoose): NoSQL database for storing student data.
  • Passport.js: Middleware for authentication.
  • Face-api.js: Library for face detection and recognition.
  • EJS: Embedded JavaScript templates for views.
  • PERISKOPE API: API integration for sending WhatsApp messages.

Setup

Prerequisites

  • Node.js: Ensure Node.js is installed on your system.
  • MongoDB: Have MongoDB installed locally or have a MongoDB Atlas account.

Installation

  1. Clone the repository:

    git clone https://github.com/aaupatel/Attendance-Tracking-using-Face-Recognition
    cd StreakTrack
    
  2. Install dependencies:

    npm install
    
  3. Create a .env file:

    touch .env
    
  4. Add the following environment variables in the .env file:

    PORT=8080
    MONGODB_URI=<your_mongodb_connection_string>
    EMAIL_HOST=<your_email_smtp_host>
    EMAIL_PORT=<your_email_smtp_port>
    EMAIL_USER=<your_email_address>
    EMAIL_PASS=<your_email_password>
    SESSION_SECRET=<your_secret_key>
    PERISKOPE_API_KEY=<your_Periskope_api_key>
    PERISKOPE_X_PHONE=<your_Periskope_phone_number>
    IMAGEKIT_PUBLIC_KEY=<your_public_key>
    IMAGEKIT_PRIVATE_KEY=<your_private_key>
    IMAGEKIT_URL_ENDPOINT=<https://ik.imagekit.io/your_imagekit_id>
    
  5. Run the application:

    npm start
    
  6. Access the application:

    Open your browser and navigate to http://localhost:8080.

Top categories

Loading Svelte Themes