This project is designed to create an efficient seat allocation system for office spaces, aimed at optimizing space utilization and minimizing operational costs. The system leverages QR codes for booking, confirmation, and live tracking of seat occupancy, integrating seat booking, real-time tracking, and electricity/cold water consumption management.
- Employee Login: Secure login using employee ID and password.
- Seat Booking: Allows employees to select available seats, book for a specific time duration, and receive a QR code or OTP for confirmation.
- Live Seat Tracking: Real-time tracking of seat availability, updated when employees scan their QR codes.
- Power and Water Usage Tracking: Calculates energy and water consumption based on seat usage, helping monitor and reduce costs.
- Admin Dashboard: HR or managers can track seat usage, and energy consumption, and view reports.
- Frontend: HTML, CSS, JavaScript, React.js
- Backend: Python (Flask/Django)
- Database: PostgreSQL / MySQL
- QR Code Generation: qrcode Python library
- Real-time Updates: WebSockets or Firebase
- Authentication: OAuth 2.0 for secure login
To run the system locally, follow these steps:
-
Clone the repository:
git clone https://github.com/yourusername/QR-Code-Seat-Allocation.git
-
Install Dependencies: Navigate to the project folder and install required dependencies:
cd QR-Code-Seat-Allocation pip install -r requirements.txt
-
Run the Backend Server: For Flask:
flask run
Or for Django:
python manage.py runserver
-
Frontend Setup: Navigate to the frontend folder and run:
npm install npm start
-
Database Setup:
- Configure the database in
settings.py
(for Django) or in the Flask app configuration. - Run migrations:
python manage.py migrate
- Configure the database in
-
Access the Application: Visit
http://localhost:8000
orhttp://localhost:3000
to view the web interface.
-
Employee:
- Log in using the employee ID and password.
- Choose an office location and select an available seat.
- Select the booking duration and confirm.
- Upon arrival at the office, scan the QR code to confirm occupancy.
- On leaving, scan the QR code again to mark the seat as available.
-
Admin:
- View the dashboard to see the seat usage and power/water consumption reports.
- Manage seat availability and occupancy statuses.
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Commit your changes (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Create a new Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Flask/Django - For building the backend.
- React.js - For creating the frontend.
- qrcode Python library - For generating QR codes.
- PostgreSQL/MySQL - For managing the database.