Skip to content

Arjunsanthosh09/EV-Finder-Python-Flask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

🚀 Project Name

🌟 Overview

This project is a fully functional booking system built with Python (Flask) and MySQL. It features a secure user authentication system, real-time station management, and seamless payment integration. The project also includes an interactive map API integration for enhanced user experience.


🎯 Features

🔐 User Authentication & Authorization

  • Secure login/signup system
  • Admin & user roles with access control
  • JWT-based authentication for API security

📅 Booking System

  • Smart time slot management to avoid conflicts
  • Real-time availability tracking
  • Payment integration with Razorpay
  • Booking status updates (cancel, finish)

📍 Station Management

  • Geolocation-based station finder using API integration
  • Detailed station information with real-time updates
  • Admin-controlled station management

👤 User Features

  • Profile management with photo upload
  • Booking history & statistics
  • Interactive map for station selection

🛠️ Admin Dashboard

  • Manage users, stations, and bookings
  • Revenue tracking & analytics
  • Comprehensive system monitoring

🛡️ Robust Error Handling

  • Proper database connection management
  • User-friendly error messages
  • Secure exception handling & logging

⚙️ Installation Guide

1️⃣ Clone the Repository

git clone https://github.com/yourusername/project-name.git
cd project-name

2️⃣ Create & Activate a Virtual Environment

python -m venv venv
source venv/bin/activate  # On Windows use `venv\Scripts\activate`

3️⃣ Install Dependencies

pip install -r requirements.txt

4️⃣ Configure the Database

mysql -u root -p
CREATE DATABASE your_database_name;

Update .env with:

DATABASE_URL=mysql+pymysql://username:password@localhost/your_database_name
SECRET_KEY=your_secret_key
RAZORPAY_KEY=your_razorpay_key
MAP_API_KEY=your_map_api_key

5️⃣ Run Migrations

flask db upgrade

6️⃣ Start the Flask Server

flask run

🚀 Usage

  • Sign up as a user or log in as an admin.
  • Book a station with real-time availability.
  • View nearby stations using the interactive map.
  • Admin panel to manage users, stations, and bookings.
  • Secure payment processing via Razorpay.

🤝 Contributing

  1. Fork the repository
  2. Create a new feature branch (git checkout -b feature-branch)
  3. Commit your changes (git commit -m 'Add new feature')
  4. Push to your forked repo (git push origin feature-branch)
  5. Open a pull request

📜 License

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


📬 Contact

📩 Email: your-email@example.com
🌍 GitHub: yourusername

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published