* Extended functionalities
* Added different UIs
This commit is contained in:
87
meal-plan-frontend-mobile/README.md
Normal file
87
meal-plan-frontend-mobile/README.md
Normal file
@@ -0,0 +1,87 @@
|
||||
# DailyMeals Mobile
|
||||
|
||||
Cross-platform **iOS** and **Android** client for the DailyMeals API, built with [Expo](https://expo.dev/) (~56) and [Expo Router](https://docs.expo.dev/router/introduction/).
|
||||
|
||||
## Features
|
||||
|
||||
- Sign in / register with JWT (tokens stored in SecureStore)
|
||||
- Dashboard with meal categories
|
||||
- Browse and search all recipes
|
||||
- Recipe detail (ingredients + steps)
|
||||
- Add recipes manually
|
||||
- English / Polish (i18n)
|
||||
- Four color themes (forest, ocean, sunset, berry)
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Node.js 20+
|
||||
- [Expo Go](https://expo.dev/go) on a physical device, or Xcode (iOS Simulator) / Android Studio (emulator)
|
||||
- DailyMeals API running locally (default `http://localhost:5000`)
|
||||
|
||||
## Setup
|
||||
|
||||
```bash
|
||||
cd meal-plan-frontend-mobile
|
||||
npm install
|
||||
```
|
||||
|
||||
Optional API override:
|
||||
|
||||
```bash
|
||||
export EXPO_PUBLIC_API_URL=http://192.168.1.10:5000/api
|
||||
```
|
||||
|
||||
When unset, dev builds use:
|
||||
|
||||
| Platform | Default API base |
|
||||
|----------|------------------|
|
||||
| iOS Simulator | `http://localhost:5000/api` |
|
||||
| Android Emulator | `http://10.0.2.2:5000/api` |
|
||||
| Physical device | Set `EXPO_PUBLIC_API_URL` to your machine's LAN IP |
|
||||
|
||||
## Run
|
||||
|
||||
```bash
|
||||
npm start
|
||||
```
|
||||
|
||||
Then press:
|
||||
|
||||
- `i` — iOS Simulator
|
||||
- `a` — Android Emulator
|
||||
- Scan QR code — Expo Go on a phone (same network; set `EXPO_PUBLIC_API_URL`)
|
||||
|
||||
Or:
|
||||
|
||||
```bash
|
||||
npm run ios
|
||||
npm run android
|
||||
```
|
||||
|
||||
## Project structure
|
||||
|
||||
```
|
||||
app/ Expo Router screens
|
||||
(auth)/ Login & register
|
||||
(main)/(tabs)/ Dashboard, meals, manage, settings
|
||||
(main)/recipe/[id] Recipe detail
|
||||
(main)/category/[category]
|
||||
src/
|
||||
api/ Fetch client + API modules
|
||||
context/ Auth & appearance
|
||||
i18n/ EN/PL translations
|
||||
theme/ Color presets
|
||||
components/ Shared UI
|
||||
```
|
||||
|
||||
## Bundle identifiers
|
||||
|
||||
- iOS: `com.dailymeals.mobile`
|
||||
- Android: `com.dailymeals.mobile`
|
||||
|
||||
Configured in `app.config.ts`.
|
||||
|
||||
## Notes
|
||||
|
||||
- Excel import is available on the web clients only; mobile supports manual recipe entry.
|
||||
- PDF export is not included on mobile.
|
||||
Reference in New Issue
Block a user