Comprehensive Car Service Platform
To address these challenges, We developed Tow123, a full-fledged platform built using React, React Native, Node.js, Express, and MongoDB with Redis for data caching. The platform supports both web and mobile applications and provides real-time service matching and management for users and providers.
Two Apps for Distinct User Roles:
Provider App: Represents companies or providers that register across multiple locations. Each provider can have three types of users:
- Managers: Can add and edit drivers and dispatchers, manage their teams, and oversee operations in various locations.
- Drivers: Handle the actual service delivery, such as towing, fuel delivery, and repairs.
- Dispatchers: Manage and assign service requests to drivers in real time, ensuring efficient operations.
- Providers are abstract entities, meaning a provider represents a collection of companies in different locations. Each location can have its own managers, drivers, and dispatchers.
User App: Vehicle owners use this app to request services such as towing, fuel delivery, flat tire repairs, lockout assistance, and more. The app matches them with nearby providers in real time based on their location and the availability of services.
Comprehensive Service Offering
Tow123 supports a wide range of services:
- Towing: For vehicles that need transportation to repair shops or other locations.
- Fuel Delivery: When users run out of fuel.
- Flat Tire Repair: On-the-spot flat tire assistance.
- Battery Jump-Start or Replacement: Assistance with dead batteries.
- Lockout Services: Help for users locked out of their vehicles.
- Impound Services: Management of vehicle impoundment requests.
Real-Time Geolocation Tracking
Geolocation API is used to match users with the nearest available providers based on their current location. This ensures quick and efficient service delivery.
- The app includes real-time tracking of both users and drivers during service requests. Once a request is made, the user can track the driver’s real-time location as they approach, enhancing transparency and reducing wait times.
- Dispatchers monitor the real-time location of drivers and assign them to jobs based on proximity and availability, ensuring efficient service operations.
Multi-Location Provider Management
- Providers are structured to support multiple locations, with each location managed by its own set of managers, drivers, and dispatchers. Managers can oversee operations, add or edit staff, and ensure that service delivery is running smoothly across different areas.
- The multi-level structure allows providers to scale their operations efficiently, with flexibility for managing teams across various geographic locations.
Caching for Performance Optimization:
Implemented Redis to cache frequently accessed data, such as provider availability, service locations, and geolocation queries. This significantly improved performance by reducing the load on the database and ensuring quicker responses to user requests.
Scalable Backend Architecture
The backend, developed with Node.js and Express, is optimised for scalability, allowing Tow123 to handle a growing user base, additional providers, and increasing service requests. MongoDB was used to store service records, user data, and provider information in a flexible and scalable manner.
Mobile App Integration
The mobile apps, developed with React Native, provide the same functionality as the web platform, ensuring a seamless experience for both users and providers. The user-friendly interface allows service requests, tracking, and management to be done directly through smartphones.