https://github.com/williamrosscrane/ubereats-clone
A full-stack UberEats clone built with React Native, Appwrite, Tailwind CSS, Zustand & Sentry. Includes auth, search, cart, and database support.
https://github.com/williamrosscrane/ubereats-clone
appwrite expo javascript react-native tailwindcss typescript zustand
Last synced: 3 months ago
JSON representation
A full-stack UberEats clone built with React Native, Appwrite, Tailwind CSS, Zustand & Sentry. Includes auth, search, cart, and database support.
- Host: GitHub
- URL: https://github.com/williamrosscrane/ubereats-clone
- Owner: WilliamRossCrane
- Created: 2025-07-28T11:13:31.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-16T02:50:44.000Z (10 months ago)
- Last Synced: 2025-08-16T04:33:35.247Z (10 months ago)
- Topics: appwrite, expo, javascript, react-native, tailwindcss, typescript, zustand
- Language: TypeScript
- Homepage:
- Size: 3.3 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🍔 Full Stack UberEats Clone

⚡ **Project Status:** Initial development complete (pending minor bugs). Ready for future development.
This project is a fully functional **UberEats Clone** mobile app developed using **React Native** and **Appwrite**, built during the [JavaScript Mastery](https://jsmastery.pro/) course. It showcases a production-ready architecture designed for seamless food delivery experiences on both iOS and Android.
Created and taught by Adrian Hajdin at JavaScript Mastery, this project covers the entire lifecycle of a scalable mobile app, from authentication and search filtering to cart functionality and database architecture.







---
## 🚧 Future Development
The initial release of this UberEats Clone is complete, and the project is now ready for future enhancements. Planned improvements include:
- **Real Stripe Payments & Payment Processing**
Integrate a secure payment system for orders. A helpful guide from JavaScript Mastery on adding payments in React Native can be found here:
🔗 [Full Stack React Native Payments Tutorial](https://www.youtube.com/watch?v=G1d_rS5qF24)
- **Menu Item Detail Page**
Create a dedicated page for each food item to show detailed descriptions, images, and customization options.
- **Profile Screen**
Allow users to view and edit their account information, change passwords, and log out of the app.
---
## ⚙️ Tech Stack
- **React Native (Expo)** – Mobile app framework
- **TypeScript** – Strong typing for reliability
- **Appwrite** – Backend-as-a-service (Auth, DB, Storage)
- **Zustand** – Lightweight global state management
- **Sentry** – Error and performance monitoring
- **Tailwind CSS (NativeWind)** – Utility-first styling for mobile
---
## 🔋 Features
👉 **Authentication System**
- Email/password sign-up
- Google OAuth login
- Persistent sessions
👉 **User Experience**
- Home screen with categories and featured restaurants
- Dynamic search and filtering
- Food item details and image display
👉 **Cart System**
- Add/remove items to cart
- Real-time price calculation
- Proceed to checkout functionality
👉 **Database Architecture**
- Scalable restaurant/food data with relationships
- Secure user data and session management
👉 **Error Tracking**
- Sentry integration for monitoring and debugging
👉 **Modern UI/UX**
- Responsive across Android and iOS
- Modular components using clean architecture
---
## 🤸 Quick Start
### ✅ Prerequisites
Make sure you have the following installed:
- [Git](https://git-scm.com/)
- [Node.js](https://nodejs.org/)
- [npm](https://www.npmjs.com/)
- [Expo CLI](https://docs.expo.dev/get-started/installation/)
### 📁 Clone the Repository
```bash
git clone https://github.com/yourusername/ubereats-clone.git
cd ubereats-clone
### 📦 Install Dependencies
- npm install
- npx expo install
### 🔐 Set Up Environment Variables
Create a .env file in the root and add:
APPWRITE_ENDPOINT=
APPWRITE_PROJECT_ID=
APPWRITE_DATABASE_ID=
APPWRITE_COLLECTION_ID=
APPWRITE_BUCKET_ID=
SENTRY_DSN=
EXPO_PUBLIC_SERVER_URL=https://ubereats-clone.dev/
### 🚀 Start the App
npx expo start
```
---
## 📺 Course Link
This project is based on the Full Stack Food Delivery App course by JavaScript Mastery.
Watch the full tutorial on YouTube:
🔗 [Build a Full Stack Uber Clone App (YouTube)](https://www.youtube.com/watch?app=desktop&v=LKrX390fJMw)
---
## 📄 License
This project is licensed under the [MIT License](https://opensource.org/licenses/MIT).
---
## ⭐ Support
If you found this project helpful, consider giving it a ⭐ on GitHub and joining the JSMastery community:
- [JS Mastery Discord](https://discord.gg/jsmastery)
- [JS Mastery Pro](https://jsm.dev/uber-jsmpro)
- [More Projects](https://jsm.dev/uber-kit)