Skip to content

saurabh100ni/Proxy

Repository files navigation

Proxy : The Face-Recognition Attendence System

Proxy is a attendence marking tool with the help of Face-Recognition. It Detects faces and recognize them and on the basis of given data it marks their attendence. It is easily Integratable with any web-based app.

  • Supported by Tensorflow Face-Api.
  • Marks attendence of Students/Employees by recognizing their face.
  • Data is stored on Firebase.
  • manage Students/Employee
  • High Availability

Installation

  • Method 1 : git clone Command : git clone https://github.com/saurabh100ni/Proxy

               * run command "npm install" (Only for first time)
               
               * run command "npm run dev"
               
               * now your app is hosted on local server with given port : localhost:<port>
    
  • Method 2 : Download and use install.bat file and execute it.

               * run *initialize.bat* (Only for first time)
               
               * run *run.bat*
               
               * now your app is hosted on local server with given port : localhost:<port>
    

Used Techonolgies

How it Works

  1. FAQ : there is an FAQ section which is basically an bot based on Azure Bot services which retrieves data from Azure Knowledge base from Azure Qna Services
  2. Login and Signup : firebase authentication services are used to authenticate user for login or sign up.
  3. Registeration of Employees/Students : for registration and storing the data of user firestore Database is used and firebase Storage is used
  4. Face-Recognition : to detect and recognize faces Tensorflow Face-Api is used . the data of person is retrieved from the firestore Database and the attendence is updated on firestore Database for each day.

Features

  • High Availability
  • Easy Integration
  • Face-Recognition
  • Realtime Database
  • Easy UI

Important Configuration

  1. update line 16 to 23 with your firebase credentials in /lib/firebase.js

  2. update line 203 to 205 in index.html with youre Azure Qna services chat-bot credentials

  3. update your firestore database rules as given below

  rules_version = '2';
  service cloud.firestore {
    match /databases/{database}/documents {
      match /{document=**} {
        allow read, write: if true;
      }
    }
  }
  1. update your firebase storage rules as given below
  rules_version = '2';
    service firebase.storage {
       match /b/{bucket}/o {
        match /{allPaths=**} {
          allow read, write;
    }
   }
  }

  1. On Google cloud shell run following commands to set cors configuration for all domains . else it may refuse to allow to work on the domain
curl -L "https://drive.google.com/file/d/19Ttaav8bGgYsraM_uaFFFVABd_Wb7Psh/view?usp=sharing" > cors_config.json
gsutil cors set cors_config.json gs://<appName>.appspot.com
  1. create firestore database collection called "employee" and create firebase storage account called "employees"
  2. You are all set to go

Contact

feel free to contact me for anything related to this