Skip to content

Mover - A Django-based ride-sharing platform connecting passengers with drivers, featuring user authentication, trip, booking, Google Maps integration, and payment processing via SSLCommerz.

Notifications You must be signed in to change notification settings

MuktadirHQ/Mover

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mover - Ride Sharing Application

A Django-based ride-sharing platform that connects passengers with drivers. The application includes user authentication, profile management, vehicle registration, trip booking, and payment integration.

Features

  • User Authentication: Secure signup, login, and password management
  • Profile Management: User profiles with personal information and addresses
  • Dual Account Types: Support for both passengers and drivers
  • Vehicle Registration: Drivers can register and manage their vehicles
  • Trip Booking: Passengers can book rides with available drivers
  • Google Maps Integration: Route planning and distance calculation
  • Payment Gateway: Integrated payment processing with SSLCommerz and Stripe
  • Rating System: Users can rate their ride experiences

Technology Stack

  • Backend: Django 6.0
  • Database: SQLite3 (development)
  • Frontend: HTML/CSS/JavaScript with Google Maps API
  • Payment: SSLCommerz, Stripe
  • Other: Python Decouple for environment variables

Prerequisites

  • Python 3.8 or higher
  • pip (Python package installer)
  • Git

Installation

1. Clone the Repository

git clone <repository-url>
cd Mover

2. Create 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. Environment Configuration

Create a .env file in the root directory with the following variables:

SECRET_KEY=your-django-secret-key
DEBUG=True
API_KEY=your-google-maps-api-key
STRIPE_API_KEY=your-stripe-api-key
# Add other necessary environment variables

5. Database Setup

Run migrations to set up the database:

python manage.py makemigrations
python manage.py migrate

6. Create Superuser (Optional)

python manage.py createsuperuser

7. Collect Static Files

python manage.py collectstatic

8. Run Development Server

python manage.py runserver

The application will be available at http://127.0.0.1:8000/

Project Structure

Mover/
├── Mover/              # Project configuration
│   ├── settings.py     # Django settings
│   ├── urls.py         # Main URL configuration
│   └── wsgi.py         # WSGI configuration
├── MoverApp/           # Main application
│   ├── models.py       # Database models (Person, Vehicle, Trip, Address)
│   ├── views.py        # View controllers
│   ├── forms.py        # Form definitions
│   ├── urls.py         # App-specific URLs
│   └── constants.py    # Application constants
├── templates/          # HTML templates
├── static/             # Static files (CSS, JS, images)
├── db.sqlite3          # SQLite database
├── manage.py           # Django management script
└── requirements.txt    # Python dependencies

Database Models

  • PersonModel: User profiles with personal information
  • VehicleModel: Vehicle information for drivers
  • AddressModel: User addresses
  • TripModel: Ride booking and trip details

Usage

  1. Sign Up: Create an account as either a passenger or driver
  2. Complete Profile: Add personal information and address
  3. For Drivers: Register vehicle details
  4. Book a Ride: Passengers can search and book available vehicles
  5. Payment: Complete payment through integrated gateway
  6. Rate: Rate your experience after the trip

API Keys Required

  • Google Maps API: For geolocation and routing features
  • Stripe API: For payment processing
  • SSLCommerz: For additional payment options

Development

To contribute to this project:

  1. Create a new branch for your feature
  2. Make your changes
  3. Test thoroughly
  4. Submit a pull request

Troubleshooting

  • Module not found errors: Ensure virtual environment is activated and dependencies are installed
  • Database errors: Run python manage.py migrate
  • Static files not loading: Run python manage.py collectstatic
  • API errors: Verify API keys in .env file

About

Mover - A Django-based ride-sharing platform connecting passengers with drivers, featuring user authentication, trip, booking, Google Maps integration, and payment processing via SSLCommerz.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published