Skip to content

Surajgupta63/VisitorAuthenticationSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Visitor Authentication System (VAS)

Overview

The Visitor Authentication System (VAS) is a web application built using Flask that allows organizations to manage visitor entries, including details like name, mobile number, purpose of visit, vistors live photo capturing and check-in/check-out times. The system also implements authentication for secure access control.

Features

  • User Authentication (Register, Login, Logout)
  • Multiple Database Support (User and Visitor data stored separately)
  • CRUD Operations for managing visitor records
  • Photo Upload & Storage
  • Responsive UI with Bootstrap

Tech Stack

  • Backend: Flask, Flask-SQLAlchemy, Flask-JWT-Extended
  • Database: SQLite
  • Frontend: HTML, Bootstrap
  • Security: bcrypt (for password hashing)

Setup Instructions

1. Clone the Repository

git clone https://github.com/your-username/vms.git
cd vms

2. Create a Virtual Environment

Windows:

python -m venv venv
venv\Scripts\activate

macOS/Linux:

python3 -m venv venv
source venv/bin/activate

3. Install Dependencies

pip install -r requirements.txt

4. Set Up the Database

python
>>> from app import db
>>> db.create_all()
>>> exit()

5. Run the Application

python app.py

The app will start running on http://127.0.0.1:8000/


API Endpoints

Authentication Routes

Endpoint Method Description
/register POST Register a new user
/login POST Login and receive a JWT token
/logout GET Logout user (clears session)

Visitor Management Routes

Endpoint Method Description
/ GET Home page (Redirects to login)
/dashboard GET View visitor records (Requires authentication)
/photo GET Photo upload page
/upload POST Upload visitor image
/update/<sno> POST Update visitor details
/delete/<sno> GET Delete visitor record

Authentication

  • The dashboard and visitor management pages are only accessible if the user is logged in.
  • If the user tries to access 127.0.0.1:8000/dashboard without logging in, they are redirected to /login.

Screenshots

(Screenshots) snap1 snap2 snap3 snap4 snap5 snap6 snap7


Author

Developed by Suraj Gupta.

LinkedIn | GitHub

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors