Loading…

    Build an Uber Clone App
    for Riders and Drivers

    Describe a ride-sharing app and Fastshot builds it. Riders request a trip, drivers accept it, and both phones update the moment the status changes. Real React Native code for iOS and Android, ready to try in about 5 to 7 minutes.

    Rider and driver modesLive trip statusiOS and Android
    TL;DR

    How do you build an Uber clone app?

    Write one prompt that describes a rider flow and a driver flow. Fastshot (fastshot.ai) builds a React Native app with a ride requests table in Supabase, and every status change reaches both phones through realtime. You scan a QR code to test it in Expo Go. Start with one city as an MVP, then add vehicle types and a second market.

    Last updated: November 4, 2026

    What Does Uber Actually Do?

    Uber matches riders with nearby drivers. A rider types a destination into the Where to? box, confirms the pickup spot and is matched to a driver. They follow the driver on a map, check the plate, car model and driver photo, and rate the trip afterwards. Price estimates appear before the rider confirms.

    Drivers use a separate Driver app. They tap Go to start receiving requests. Each request shows a fare estimate, the rider rating and the trip length, and it times out if the driver does nothing. Ratings run both ways, so a rider is judged as well as a driver.

    Three ideas carry the product: a request that moves through clear states, a live view of where the other person is, and trust built from profiles and ratings. Those are what a ride-sharing clone copies. Uber also reserves rides up to 90 days ahead and runs in more than 10,000 cities, but a first taxi app for one town needs none of that scale.

    Uber Features Mapped to Your App

    Each Uber behavior becomes a screen in your app and a table or bucket in Supabase.

    Uber featureHow it ships in your appWhat it stores
    Where to? destination boxRequest Ride screen with pickup and drop-off fields and a map screen built on react-native-mapsrides: rider_id, pickup_text, dropoff_text, pickup_lat, pickup_lng, dropoff_lat, dropoff_lng
    Matching with a nearby driverDriver Home screen with an Online switch and a live list of open requests; the first Accept winsdrivers: is_online; rides.driver_id filled on accept
    Follow your driver on the mapActive Trip screen with a moving driver pin that refreshes through Supabase realtimedrivers: lat, lng, updated_at
    Driver, car and plate checkDriver card shown to the rider after acceptance, with photo, car model and platevehicles: make, model, plate; profiles.avatar_path in an image storage bucket
    Trip stagesA status strip on both screens: requested, accepted, arrived, in progress, completed, cancelledrides.status and rides.updated_at
    Rate your tripRating screen for both roles after completionratings: ride_id, from_user, to_user, stars, comment
    Reserve a ride in advanceSchedule toggle with a date and time picker on the request formrides.scheduled_for
    Trip historyHistory tab for riders and a Completed Trips list for driversThe same rides table, filtered by rider_id or driver_id

    Screens in Your Taxi App

    Fastshot plans these screens before it writes code, and you approve the list first.

    Sign up and pick a role

    Email, Google or Apple sign-in through Supabase auth, then a Rider or Driver choice saved on the profile.

    Request Ride

    Pickup and drop-off fields over a map, an optional schedule switch and a big Request button.

    Finding Driver

    A waiting state that listens for the accept event and offers a Cancel button while the request is open.

    Active Trip

    The driver pin, the status strip and the driver card for the rider, and Arrived, Start and Complete buttons for the driver.

    Driver Home

    An Online switch and a live list of open requests with pickup and drop-off text.

    Rate Trip

    One to five stars and a short comment, shown to both sides when the ride completes.

    History and Profile

    Past rides for each role, plus a profile with a photo upload and, for drivers, the vehicle details.

    Paste This Prompt Into Fastshot

    It builds an original ride-sharing app called HopRide with its own name and look. Rename it before you publish.

    hopride-prompt.txt
    Build a ride-sharing app called HopRide for iOS and Android. One app, two modes: at sign-up the user picks Rider or Driver.
    
    Auth: email, Google and Apple sign-in with Supabase. Save the choice in a profiles table (full_name, role, avatar_path).
    
    Rider screens
    - Request Ride: pickup and drop-off fields, a map, an optional "schedule for later" switch.
    - Finding Driver: waiting state with a Cancel button.
    - Active Trip: driver pin on the map, driver name, car model, plate and a status strip.
    - Rate Trip: 1 to 5 stars and a comment.
    - History.
    
    Driver screens
    - Home: Online switch and a live list of open requests.
    - Active Trip: buttons Arrived, Start Trip, Complete Trip.
    - Completed Trips list.
    
    Tables: rides (rider_id, driver_id, pickup_text, dropoff_text, pickup_lat, pickup_lng, status, scheduled_for, created_at), drivers (user_id, is_online, lat, lng, updated_at), vehicles (driver_id, make, model, plate), ratings (ride_id, from_user, to_user, stars, comment).
    Statuses: requested, accepted, arrived, in_progress, completed, cancelled.
    
    Use Supabase realtime on rides and drivers so both phones update with no refresh. Row level security: a rider reads only their rides; a driver reads open requests and the rides they accepted.
    Send a push notification to the rider when a driver accepts and when the driver arrives.
    Design: clean, dark map, green accent, large tap targets.

    How to Build Your Taxi App

    1

    Paste the prompt and approve the plan

    Fastshot asks one or two questions, for example whether you want one vehicle type or several. It then writes a plan of screens that you approve before any code appears.

    2

    Connect Supabase

    Press the connect button in the chat. Fastshot creates the rides, drivers, vehicles and ratings tables and turns on realtime for rides and drivers. The backend lesson walks through the same step.

    3

    Play both roles on two devices

    Open the app in Expo Go through the QR code and sign up as a rider. Open the live browser preview, or a second phone, and sign up as a driver. Request a trip on one screen and watch it land on the other.

    4

    Add trip alerts

    Ask for push notifications when a driver accepts and arrives. The rider no longer needs to keep the screen open.

    5

    Tune the details by chat

    Ask for a bike or van option, a scheduled-ride picker or a longer rating comment. Each request is a follow-up message, and the app rebuilds in the preview.

    6

    Publish to both stores

    Fastshot builds the APK, AAB and IPA on its own machines. Add your Apple Developer account for TestFlight and your Google Play account for Android, as the Google Play lesson shows.

    Make It Your Own

    A clone of a global giant loses to the original. A ride app aimed at one group wins that group. Think of school runs for parents, campus rides after dark, airport shuttles on fixed routes, motorbike taxis for a town the big apps skip, or accessible rides for wheelchair users. The community already built motorbike and small-town taxi apps on Fastshot, so the pattern is proven.

    Then add what the original does not offer your audience: a local language, fixed-route tickets, a favorite-driver list, or a courier mode that reuses the same request flow for parcels and food. Pair it with a restaurant delivery app pattern if drivers carry orders as well as people.

    Finally, brand it. Pick a new name, ask Fastshot for an icon and a color palette, and write your own store description. A distinct product is easier to rank in the stores and avoids confusion with the original.

    Ride Apps People Built With Fastshot

    Published community apps in the ride-hailing space. Open one to see the screens.

    TAXI

    A ride-hailing app with a map screen, destination search, home and work shortcuts, and a choice of vehicle types. See TAXI in the gallery.

    Ridego

    A map-first ride-sharing app with vehicle tracking, saved shortcuts for frequent trips and an activity history. See Ridego in the gallery.

    Rydelink

    A motorbike-hailing app where riders pass an approval check before they can take passengers. See Rydelink in the gallery.

    Frequently Asked Questions

    What is ride sharing app development?

    It means building the software that connects people who need a trip with drivers who can take it. The core is a ride requests table, a driver availability flag and live status updates on both screens. Fastshot generates all three from a text description, so you skip writing the backend by hand.

    How long does taxi app development take with Fastshot?

    The first version of a taxi app appears in about 5 to 7 minutes after you approve the plan. Refining the request form, the driver screens and the trip states takes a few more chat messages. Traditional taxi app development with separate rider and driver apps usually runs for months.

    Do I need two separate apps for riders and drivers?

    No. Fastshot builds one app per project, so the prompt asks for a role picker at sign-up: Rider or Driver. Each role sees its own tabs, and a single profiles table stores the choice. One store listing is simpler to publish and to keep updated.

    How does the driver get a ride request in real time?

    The app subscribes to the rides table with Supabase realtime. When a rider inserts a request with the status requested, every online driver sees it appear in the list. The first driver to tap Accept writes their id into the row, and the rider screen switches to the active trip.

    Can I put a taxi app on the App Store and Google Play?

    Yes. Fastshot builds the app on its own build machines and produces the APK, AAB and IPA files. You publish with your own Apple Developer account ($99 a year) and Google Play account ($25 one-time), and Fastshot uploads the build to TestFlight and Google Play for you.

    Do I own the code of my ride-sharing app?

    Yes. The project is real React Native and Expo code. You can download it as a zip or push it to GitHub whenever you like, so a developer can extend the app later.

    Is it legal to build an app like Uber?

    The idea of connecting riders with drivers is open to everyone. Uber owns its name, logo, designs and code, so give your app its own name, icon and look. Transport rules differ by city, so check the licensing a driver needs where you operate.

    Build Your Ride-Sharing App Today

    Paste the prompt, approve the plan and request your first test ride on your own phone.

    No coding needediOS and Android

    About the Author

    Elvira Dzhuraeva is an expert in AI mobile app development and React Native. A former Senior Product Manager at Google specializing in AI/ML and Generative AI, she is the Founder of Fastshot (YC-backed) and a founding contributor to Kubeflow.

    AI Mobile App DevelopmentReact NativeAI Developer ToolsVibecodingAI/ML Ops