Skip to content

An advanced parking management solution leveraging Node.js for server-side operations and a FastAPI-based computer vision model. This system provides real-time parking space detection, efficient space allocation, and a user-friendly interface for seamless parking experiences.

License

Notifications You must be signed in to change notification settings

akshatjainei/APS

Repository files navigation

Automated Parking System

An advanced parking management solution that uses computer vision to identify free parking slots and provides an integrated user authentication and payment system.

Table of Contents

Features

  • Computer Vision: Utilizes OpenCV to identify free parking slots in real-time.
  • Dockerized Application: The computer vision model is hosted on DockerHub for easy deployment.
  • Node.js Backend: Provides an API for parking lot management.
  • MongoDB Database: Stores user and parking lot information.
  • Redis Caching Layer: Improves performance and scalability.
  • Google OAuth 2.0: User authentication and authorization.
  • Stripe Payment Gateway: Handles payments and generates QR code tickets.
  • Frontend: Built with HTML, CSS, and JavaScript located in the public folder.

Installation

Prerequisites

  • Docker
  • Node.js
  • npm
  • MongoDB
  • Redis

Clone the Repository

git clone https://github.com/akshatjainei/APS.git

Computer Vision Model Setup and Redis

docker compose up

Backend Setup

  • Install Node.js dependencies:
npm install

-Set up environment variables: Create a .env file in the directory and add the following:

PORT=your_port_number
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
STRIPE_SECRET_KEY=your_stripe_secret_key
MONGO_URI=your_mongodb_url
  • Run the backend:
nodemon app.js

Usage

User Authentication

Parking Lot Management

Payments and QR Code Generation

  • The Stripe payment gateway is integrated, and upon successful payment, a QR code ticket is generated for the user.

Frontend

  • The frontend can be accessed by opening the index.html file located in the public folder.

Technologies Used

  • OpenCV: For computer vision and free slot detection.
  • Docker: To containerize the computer vision model.
  • Node.js: Backend server.
  • MongoDB: Database for storing user and parking lot data.
  • Redis: Caching layer to enhance performance.
  • Google OAuth 2.0: For user authentication.
  • Stripe: For payment processing.
  • QR Code Generator: To generate QR code tickets.
  • HTML, CSS, JavaScript: Frontend technologies used in the public folder.

Contributing

  • Fork the repository.
  • Create a new branch (git checkout -b feature-branch).
  • Commit your changes (git commit -m 'Add some feature').
  • Push to the branch (git push origin feature-branch).
  • Open a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

An advanced parking management solution leveraging Node.js for server-side operations and a FastAPI-based computer vision model. This system provides real-time parking space detection, efficient space allocation, and a user-friendly interface for seamless parking experiences.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published