GithubHelp home page GithubHelp logo

zezecodes / fras Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bsodhi/fras

0.0 0.0 0.0 5.85 MB

Face Recognition based Attendance System

License: MIT License

JavaScript 7.15% Python 41.55% CSS 0.44% HTML 4.53% Vue 46.33%

fras's Introduction

fras

fras is a Face Recognition based Attendance System. It is a simple web application built using Python flask and VueJS. The face recognition task is accomplished using face_recognition.

Development environment setup

System requirements

  1. git client should be installed on your machine.
  2. The backend code is written using Python 3.6 or higher
  3. SQLite is used for database. You can use other RDBMS if you like.
  4. NodeJS stable LTS version. (Can be installed by following these steps: https://nodejs.org/en/download/). We use node for setting up VueJS client app (https://cli.vuejs.org/guide/installation.html).
  5. We use Visual Studio Code for developing and debugging code. Install Microsoft's Python and VueJS Vetur extensions.

Steps to prepare the workspace

  1. Create a python virtual environment for this project. See this for how to do it: https://docs.python.org/3/library/venv.html. E.g., you can run the following: python3 -m venv ~/.pyenv/FRAS to create the virtual environment in ~/.pyenv/FRAS folder.

  2. Open a shell and cd into a directory that you want to work in.

  3. Clone this git repository: git clone https://github.com/bsodhi/fras.git.

  4. Run cd fras and then source ~/.pyenv/FRAS/bin/activate to activate the python virtual environment.

  5. ONLY if you are using MySQL: On Ubuntu, you will do sudo apt-get install libmysqlclient-dev to install MySQL client development library. It will be needed when we install the python connector via pip in following steps.

  6. Run pip install -r api_service/requirements.txt.

    NOTE: Some modules may fail to install due to unavailability of certain native libraries or headers on your OS. You can Google the error text to find a solution.

  7. Install necessary dependencies for VueJS app:

    1. cd client_app
    2. npm install

Running the application

After setting up the workspace as per the steps listed above you can deploy and run the application. Following are the steps:

  1. cd fras/client_app
  2. Compile the VueJS app: npm run build
  3. Start the MySQL server (ONLY if you are using MySQL instead of SQLite). You may also have to set proper values for the database connection information, and other settings if using other than SQLite.
  4. cd fras/api_service
  5. source ~/.pyenv/FRAS/bin/activate to activate the python virtual environment.
  6. Run python to start a python session, and issue the following commands to setup the database:
    1. from models import *
    2. setup_demo_db()
    3. Ctrl-D to exit the python session.
  7. Run python fras_app.py to start the web application.
  8. Open http://localhost:4567/fras/app/index.html
  9. Login using ID admin and password admin (Or whatever you set via the setup_demo_db())

fras's People

Contributors

bsodhi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.