Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/shivxmr/ryde

Ryde is a full-stack ride-sharing app inspired by Uber. It features user authentication, real-time ride tracking, dynamic pricing, and an intuitive UI. Built with modern web technologies, Ryde is a scalable solution that simulates a real-world ride-hailing experience.
https://github.com/shivxmr/ryde

expo google-maps-api nativewind neondb nextjs postgresql react-native stripe tailwindcss typescript zustand

Last synced: 28 days ago
JSON representation

Ryde is a full-stack ride-sharing app inspired by Uber. It features user authentication, real-time ride tracking, dynamic pricing, and an intuitive UI. Built with modern web technologies, Ryde is a scalable solution that simulates a real-world ride-hailing experience.

Awesome Lists containing this project

README

        




Project Banner


reactnative
postgresql
expo
stripe

Full Stack Uber Clone


## πŸ“‹ Table of Contents

1. πŸ€– [Introduction](#introduction)
2. βš™οΈ [Tech Stack](#tech-stack)
3. πŸ”‹ [Features](#features)
4. 🀸 [Quick Start](#quick-start)
5. πŸ•ΈοΈ [Snippets (Code to Copy)](#snippets)
6. πŸ–‡οΈ [Links](#links)
7. πŸ“¦ [Assets](#assets)
8. πŸš€ [More](#more)

## πŸ€– Introduction

Built with React Native for handling the user interface, Google Maps for rendering maps with directions, stripe for
handling payments, serverless Postgres for managing databases, and styled with TailwindCSS, Uber Clone is a perfect
mobile app. The primary goal is to demonstrate how to develop full-stack mobile applications to showcase the developer's
skills in a unique manner that creates a lasting impact.

## βš™οΈ Tech Stack

- React Native
- Expo
- Stripe
- PostgreSQL
- Google Maps
- zustand
- Clerk
- Tailwind CSS

## πŸ”‹ Features

πŸ‘‰ **Onboarding Flow**: Seamless user registration and setup process.

πŸ‘‰ **Email Password Authentication with Verification**: Secure login with email verification.

πŸ‘‰ **oAuth Using Google**: Easy login using Google credentials.

πŸ‘‰ **Authorization**: Secure access control for different user roles.

πŸ‘‰ **Home Screen with Live Location & Google Map**: Real-time location tracking with markers on a map.

πŸ‘‰ **Recent Rides**: View a list of recent rides at a glance.

πŸ‘‰ **Google Places Autocomplete**: Search any place on Earth with autocomplete suggestions.

πŸ‘‰ **Find Rides**: Search for rides by entering 'From' and 'To' locations.

πŸ‘‰ **Select Rides from Map**: Choose available cars near your location from the map.

πŸ‘‰ **Confirm Ride with Detailed Information**: View complete ride details, including time and fare price.

πŸ‘‰ **Pay for Ride Using Stripe**: Make payments using multiple methods like cards and others.

πŸ‘‰ **Create Rides After Successful Payment**: Book a ride after confirming payment.

πŸ‘‰ **Profile**: Manage account details in the profile screen.

πŸ‘‰ **History**: Review all rides booked so far.

πŸ‘‰ **Responsive on Android and iOS**: Optimized for both Android and iOS devices.

and many more, including code architecture and reusability

## 🀸 Quick Start

Follow these steps to set up the project locally on your machine.

**Prerequisites**

Make sure you have the following installed on your machine:

- [Git](https://git-scm.com/)
- [Node.js](https://nodejs.org/en)
- [npm](https://www.npmjs.com/) (Node Package Manager)

**Installation**

Install the project dependencies using npm:

```bash
npm install
```

**Set Up Environment Variables**

Create a new file named `.env` in the root of your project and add the following content:

```env
EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY=

EXPO_PUBLIC_PLACES_API_KEY=
EXPO_PUBLIC_DIRECTIONS_API_KEY=

DATABASE_URL=

EXPO_PUBLIC_SERVER_URL=https://uber.dev/

EXPO_PUBLIC_GEOAPIFY_API_KEY=

EXPO_PUBLIC_STRIPE_PUBLISHABLE_KEY=
STRIPE_SECRET_KEY=
```

Replace the placeholder values with your actual Clerk, Stripe, NeonDB, Google Maps, andgeoapify credentials. You can
obtain these credentials by signing up on
the [Clerk](https://clerk.com/), [Stripe](https://stripe.com/in), [NeonDB](https://neon.tech/), [Google Maps](https://console.cloud.google.com/)
and [geoapify](https://www.geoapify.com/) websites respectively.

**Running the Project**

```bash
npx expo start
```

Download the [Expo Go](https://expo.dev/go) app and Scan the QR code on your respective device to view the project.