This project is a React Native mobile application designed to streamline order management for businesses. It allows users to efficiently take orders, manage product categories, and finalize transactions. The app provides a user-friendly interface for staff to input table numbers, select items, and complete orders, enhancing operational efficiency and customer satisfaction.
- Authentication: Secure user authentication with sign-in functionality. 🔐
- Order Management: Create, manage, and finalize orders with ease. 🧾
- Category & Product Selection: Intuitive selection of product categories and items. 🍔
- Real-time Updates: Display current order items in real-time. 🔄
- Navigation: Seamless navigation between different screens using React Navigation. 🗺️
- Data Persistence: User authentication data is persisted across app sessions using AsyncStorage. 💾
- API Integration: Centralized API service for making HTTP requests to the backend. 🌐
| Category | Technology | Description |
|---|---|---|
| Frontend | React Native | Core framework for building cross-platform mobile applications. |
| React | JavaScript library for building user interfaces. | |
| React Navigation | Library for handling navigation between screens. | |
| React Native AsyncStorage | Library for persistent data storage. | |
| Expo | Framework for building React Native apps with ease. | |
| Expo Status Bar | Manages the status bar in the application. | |
| React Native Safe Area Context | Provides safe area context for handling device notches and screen insets. | |
| React Native Screens | Provides native screen optimization for React Native. | |
| Backend | (Assumed - details not directly in summaries) | The application interacts with a backend API, but the specific technology is not detailed. |
| API Client | Axios | HTTP client for making API requests. |
| Language | TypeScript | Superset of JavaScript that adds static typing. |
| Build Tool | Expo CLI | Command-line tool for developing and building Expo projects. |
| Other | app.json | Expo app configuration file. |
| tsconfig.json | TypeScript compiler configuration file. |
Follow these instructions to get the project up and running on your local machine.
- Node.js (>=16)
- npm or yarn
- Expo CLI (
npm install -g expo-cli) - A mobile device (iOS or Android) or an emulator
-
Clone the repository:
git clone https://github.com/Kaua26323/Mobile-Pizzaria cd Mobile-Pizzaria -
Install dependencies:
npm install # or yarn install
-
Start the Expo development server:
npm start # or yarn start -
Scan the QR code with the Expo Go app on your mobile device, or run on an emulator.
- For Android emulator:
npm run androidoryarn android - For iOS simulator:
npm run iosoryarn ios
- For Android emulator:
mobile-app/
├── App.tsx # Main application component
├── index.ts # Entry point for the React Native application
├── app.json # Expo configuration file
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── src/
│ ├── components/ # Reusable UI components
│ │ ├── ModalPicker.tsx # Custom modal picker component
│ │ ├── ListItems.tsx # Custom list items component
│ ├── contexts/ # React Contexts
│ │ ├── AuthContext.tsx # Authentication context
│ ├── pages/ # Application screens/pages
│ │ ├── Dashboard/index.tsx # Dashboard page
│ │ ├── FinishOrder/index.tsx # Finish Order page
│ │ ├── Order/index.tsx # Order page
│ │ ├── SignIn/index.tsx # Sign-in page
│ ├── routes/ # Navigation routes
│ │ ├── app.routes.tsx # Application routes
│ │ ├── auth.routes.tsx # Authentication routes
│ │ ├── index.tsx # Main router
│ ├── services/ # API services
│ │ ├── api.ts # Axios instance for API requests
├── assets/ # Application assets (images, icons, etc.)





