Overview
The Table Service App is a comprehensive React Native restaurant table service application built with Expo SDK 54. This appears to be a dual-purpose app serving both customers for ordering and potentially staff for order management.
Authentication & User Management
- User authentication and profile management
- Secure keychain storage for sensitive data
- Internationalization support (i18n) for multiple languages
- Settings and preferences management
Table Booking System
- Branch/Store Locator: Find nearby restaurant locations
- Table Reservation: Book tables with date, time, and party size selection
- Customer Details: Name, email, phone, and special requests
- Booking Confirmation: Confirmation screen with booking details
- Table Selection: Choose specific tables within branches
Menu & Ordering System
- Dynamic Menu Categories: Browse food categories and subcategories
- Product Catalog: Detailed product pages with descriptions and pricing
- Time-Based Menus: Special menus based on time of day (breakfast, lunch, dinner)
- Shopping Cart: Add/remove items with quantity management
- Order History: View past orders and order status tracking
Payment Integration
- Multiple Payment Providers: Stripe, Square, and Worldpay integration
- In-App Payments: Secure payment processing
- Card Payments: Support for various card types
- Terminal Integration: Stripe Terminal for card readers
Order Management & Fulfillment
- Order Status Tracking: Real-time order status updates
- Receipt Printing: Integrated receipt printer utilities
- Order Notifications: Push notifications for order updates
Loyalty Program
- Customer Loyalty: Points system for repeat customers
- Rewards Management: View and redeem loyalty rewards
- Loyalty Dashboard: Track points and rewards history
Location & Navigation Services
- Maps Integration: Google Maps for store location visualization
- GPS Location: Find nearby branches and stores
- Branch Information: Detailed branch profiles with addresses
Advanced Features
- QR Code Generation: For order identification and loyalty cards
- Camera Integration: Vision camera for scanning or photo capture
- Bluetooth Connectivity: BLE support for peripherals (printers, card readers)
- Offline Capability: Local storage with MMKV for offline functionality
- Push Notifications: Firebase integration for real-time updates
Technologies Used
React Native
Expo
React Query
AsyncStorage
MMKV
Axios
Firebase
Stripe
Square
Worldpay
TypeScript
ESLint
Prettier
Winston
Key Capabilities
- Complete table service workflow from booking to payment
- Multi-vendor payment processing
- Receipt printing for order confirmation
- Loyalty program integration
- Real-time order tracking
- Multi-language support
- Offline-first architecture