Snake Charmers Devlogs

About

LifeRide ๐Ÿš‘

FastAPI Go React PostgreSQL Nginx

LifeRide Banner

Every Second Counts. Every Life Matters.

LifeRide is a cutting-edge emergency medical transportation platform connecting patients with ambulances in real-time.
Explore the API ยป

Quick Start ยท Features ยท Report Bug ยท Request Feature

Maintenance License Issues

๐Ÿฅ About LifeRide

LifeRide is revolutionizing emergency medical transportation by leveraging modern technology to save lives. Our platform seamlessly connects patients with the nearest available ambulances through an intuitive interface, providing real-time tracking, transparent pricing, and reliable service when it matters most.

Why LifeRide?

  • โฑ๏ธ Reduced Response Time: Algorithmic matching of patients with the closest available ambulances
  • ๐Ÿ“ Precision Location: Accurate GPS tracking for both patients and drivers
  • ๐Ÿ’ฐ Transparent Pricing: Clear cost estimates before booking
  • ๐Ÿ”„ Real-time Updates: Live tracking and status notifications
  • ๐Ÿ’ฒ Price Bidding System: Negotiate fares directly with drivers for non-emergency transport
  • โญ Quality Assurance: Post-service rating system for continuous improvement

Key Metrics

Adaptive

Search Radius

24/7

Service Availability

100%

Secure Transactions

Bidding

Fare Negotiation

๐Ÿ“‹ Table of Contents

๐Ÿ‘ฅ Team

Core Developers

Role Name GitHub
Team Leader Imdad Rakib GitHub
Developer SA-K1B GitHub
Developer IAmAreza GitHub

Project Mentor

  • Shakil Shahan - GitHub

๐Ÿš€ Project Overview

LifeRide is a comprehensive web-based platform designed to revolutionize emergency medical transportation by connecting users with nearby ambulance drivers in real-time. The system leverages Google Maps API integration and real-time notifications to provide a seamless experience during medical emergencies when every second counts.

Key Goals

  • Reduce ambulance response time in emergencies
  • Provide transparent pricing and ETA information
  • Create a reliable platform for medical transport
  • Enable real-time tracking and communication

โœจ Key Features

For Users ๐Ÿ‘ค

  • Intuitive Profile Management: Create and manage your personal profile
  • Location-Based Services: View nearby available ambulances on a map
  • Route Planning: Add precise start and end locations for your journey
  • Transparent Information: View ETA and approximate price before booking
  • Seamless Booking: Request an ambulance with a single click
  • Quality Control: Rate drivers and provide feedback after service completion

For Drivers ๐Ÿš—

  • Professional Profiles: Create and manage driver profiles with vehicle details
  • Availability Management: Toggle availability status to control incoming requests
  • Request Handling: Accept or reject ride requests based on availability
  • Trip Control: Start, track, and end rides through an intuitive interface
  • Payment System: Manage payments and view earnings history

๐Ÿ— System Architecture

Architecture Diagram

Architecture Diagram

Services Overview

Our platform uses a microservices architecture with the following key components:

Service Description
Location Service Tracks and manages real-time driver locations
Ambulance Finder Service Identifies available ambulances within proximity
Auth Service Handles user authentication and token validation
Trip Service Manages trip creation, updates, and completion
WebSocket Service Facilitates real-time communication between users and drivers

System Flow Diagram

System Flow Diagram

Operational Flow Explained

  1. User Request Initiation ๐Ÿ“ฑ
    • User specifies start and end locations through the app interface
  2. Proximity-Based Ambulance Search ๐Ÿ”
    • The Ambulance Finder Service locates available drivers within a 2km radius
  3. Driver Notification System ๐Ÿ“ฃ
    • Available drivers receive notifications and can accept or decline
  4. Trip Commencement ๐Ÿšฆ
    • Upon acceptance, real-time tracking is activated via Google Maps API
  5. Real-Time Updates ๐Ÿ“Š
    • Users receive continuous updates on driver location, ETA, and trip status
  6. Service Completion and Feedback ๐Ÿ’ฏ
    • Post-trip payment processing and driver rating system activation

๐Ÿ“Š Database Design

The ER diagram illustrates our relational database structure, showing the relationships between users, drivers, trips, and other key entities.

ER Diagram

๐Ÿ“˜ API Documentation

We maintain comprehensive API documentation to facilitate integration and development.

Swagger

๐Ÿ’ป Tech Stack

Backend

  • FastAPI: High-performance Python framework for building APIs
  • Go: Used for performance-critical microservices
  • WebSockets: For real-time bidirectional communication

Frontend

  • React: JavaScript library for building user interfaces
  • Redux: State management for the application
  • Google Maps API: For mapping, routing, and location services

Infrastructure

  • PostgreSQL: Relational database for storing application data
  • Nginx: Load balancer for distributing traffic
  • Docker: Containerization for consistent development and deployment
  • CI/CD: Automated testing and deployment pipelines
โž” Back to Home