Skip to content

A React Native food ordering app with Supabase backend, featuring custom password reset flow, EXPO API routes architecture, enhanced user profiles, and comprehensive error handling. Extends the original tutorial with improved authentication, real-time updates, and optimized data management.

Notifications You must be signed in to change notification settings

nsoliven/FoodOrdering

Repository files navigation

Food Ordering App

This project is based on a comprehensive YouTube tutorial on Full Stack Mobile Development using React Native and Supabase. The original tutorial guides you through building a complete food ordering application with both frontend and backend functionality which can be found here

Major Enhancements

Password Reset System

reset-password-desk

  • Complete password reset flow with verification codes

  • Custom Supabase integration with secure EXPO API ROUTE reset process

  • Implementation Files:

    Client-Side Components:

    • src/api/auth/index.ts
    • src/app/(auth)/forgot-password
    • src/app/(auth)/new-password
    • src/app/(auth)/verify-reset-code

    Server-Side Components:

    • src/app/api/auth/reset+api.ts

User Profile Improvements

  • Revamped profile page with enhanced user information display
  • Improved user interface on many pages
image image image image image

PRODUCTS EXPO API ROUTES Architecture Upgrade

  • Products now managed through dedicated Expo API Route
  • API endpoints located at /src/app/api/products
  • Improved data flow and separation of concerns
nevryks@m1p-nv ~ % curl http://localhost:8081/api/products | jq   
  {
    "id": 20,
    "created_at": "2025-03-19T00:30:04.653321+00:00",
    "name": "Pepperoni",
    "image": "0d357d85-d5e6-4e0a-9acc-069452ec67c7.png",
    "price": 10.99
  },
  {
    "id": 22,
    "created_at": "2025-03-19T00:31:32.286456+00:00",
    "name": "Six Cheese",
    "image": "79624e45-8093-450c-89ed-01bf2a9ca921.png",
    "price": 12.99
  },
  {
    "id": 23,
    "created_at": "2025-03-19T00:31:58.921223+00:00",
    "name": "Deluxe",
    "image": "3c8a32ad-f9a1-47bd-a981-3ee1802d2075.png",
    "price": 13.99
  }
# and continuing on........

Enhanced Features

Core Improvements:

  • Loading indicators for all asynchronous operations
  • Error handling with try-catch blocks for many files
    • /src/providers
  • Added validation for minimum cart items
  • Empty state for "No orders found"
  • Enhanced checkout process with safeguards
  • Consistent loading indicators throughout the application
  • Improved notification system for order updates
    • /src/lib/client/notifications.tsx

The base application from the tutorial includes:

  • User interface for browsing and ordering food
  • Admin dashboard for managing products and orders
  • Supabase integration for backend functionality
  • Authentication and user management
  • Real-time data updates with subscriptions

Table Visualizer

image

About

A React Native food ordering app with Supabase backend, featuring custom password reset flow, EXPO API routes architecture, enhanced user profiles, and comprehensive error handling. Extends the original tutorial with improved authentication, real-time updates, and optimized data management.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published