Skip to content

RawanFarakhnah/auto_fix

Repository files navigation

Auto Fix 🚗🔧

Python Django MySQL License: MIT

A Django-based web platform that helps car owners manage their vehicles, find nearby workshops, diagnose car issues using AI, set maintenance reminders, and leave service reviews.


✨ Features

  • 📍 Find Nearest Workshop: Locate workshops using geolocation or address-based proximity.
  • 🧠 AI Car Diagnosis: Chat with an AI assistant to identify potential issues based on symptoms.
  • ⭐ Service Reviews: Rate and review workshops and services.
  • ⏰ Maintenance Notifications: Get reminded about periodic car maintenance.
  • 🔐 Authentication: Secure login and user management.
  • 📱 Responsive UI: Mobile-friendly and intuitive design.
  • 🔄 Dynamic Content: AJAX-powered interactions.
  • 🗂️ Relational DB: MySQL with Django ORM.
  • 🌐 REST API: Easily integrate with mobile or third-party services.

🙌 Special Thanks

We extend our deepest gratitude to Axsos Academy for providing a transformative learning journey.
A heartfelt thank you to our instructor and teaching assistant for their continuous guidance, encouragement, and knowledge-sharing throughout this project.
This platform is a testament to the power of learning through collaboration.

👩‍💻 Team Members


🚀 Quick Start

Prerequisites

  • Python 3.8+
  • MySQL 8.0+
  • Git

Installation

# Clone the repository
git clone https://github.com/RawanFarakhnah/auto-fix.git
cd auto-fix

# Set up virtual environment
python -m venv venv
source venv/bin/activate  # macOS/Linux
venv\Scripts\activate     # Windows

# Install dependencies
pip install -r requirements.txt

Database Setup

  1. Create MySQL database:
CREATE DATABASE auto_fix_db;
  1. Update settings.py:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'auto_fix_db',
        'USER': 'your_username',
        'PASSWORD': 'your_password',
        'HOST': 'localhost',
        'PORT': '3306',
        'OPTIONS': {
            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
        }
    }
}

Run Application

# Apply database migrations
python manage.py migrate

# Create admin user
python manage.py createsuperuser

# Start development server
python manage.py runserver

Visit http://localhost:8000 in your browser.


📂 Project Structure

auto_fix/
├── accounts/
│   ├── models.py
│   ├── views.py
├── admin_dashboard/
│   ├── models.py
│   ├── views.py
├── ai_diagnosis/
│   ├── models.py
│   ├── views.py
├── auto_fix/
│   ├── settings/
│   ├── urls.py
│   └── wsgi.py
├── bookings/
│   ├── models.py
│   ├── views.py
├── cars/
│   ├── models.py
│   ├── views.py
├── landing/
│   ├── models.py
│   ├── views.py
├── locations/
│   ├── models.py
│   ├── views.py
├── media/
│   ├── workshops_images/
├── owner_dashboard/
│   ├── models.py
│   ├── views.py
├── reviews/
│   ├── models.py
│   ├── views.py
├── user_dashboard/
│   ├── models.py
│   ├── views.py
├── workshops/
│   ├── models.py
│   ├── views.py
├── templates/
│   ├── base.html
│   ├── base2.html
│   ├── accounts/
│   ├── admin_dashboard/
│   ├── landing/
│   ├── owner_dashboard/
│   └── user_dashboard/
├── static/
│   ├── css/
│   ├── js/
│   └── img/
├── manage.py
├── requirements.txt
├── README.md

🔒 Security Features

  • ✅ CSRF protection
  • ✅ Password hashing
  • ✅ Secure user authentication
  • ✅ Role-based access control
  • ✅ Rate limiting for sensitive endpoints

🛠️ Tech Stack

  • Backend: Django 4.0+
  • Database: MySQL 8.0+
  • Frontend: HTML5, CSS3, JavaScript
  • Authentication: Django Allauth
  • AI Logic: Custom Python AI models (extendable)

About

A Django-based web platform that helps car owners manage their vehicles, find nearby workshops, diagnose car issues using AI, set maintenance reminders, and leave service reviews.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors