# Meezi development demo ## Café | Field | Value | |-------|--------| | Slug | `demo-cafe` | | ID | `cafe_demo_001` | | Branch | `branch_demo_main` | ## Staff (OTP login) Phones and roles are listed in [`data/demo-credentials.json`](../data/demo-credentials.json). | Role | Phone | Name | |------|-------|------| | Owner | `09121234567` | مدیر دمو | | Manager | `09121111111` | مدیر شعبه | | Cashier | `09122222222` | صندوقدار | | Waiter | `09123333333` | گارسون | | Waiter | `09124444444` | گارسون ۲ | | Chef | `09125555555` | آشپز | | Delivery | `09126666666` | پیک | In **Development**, OTP is logged by the API (no SMS). ## System admin | Field | Value | |-------|--------| | Login URL | `http://localhost:3101/fa/admin/login` | | Phone | `09120000001` | After OTP login you can manage **plans/prices**, **integrations** (ZarinPal, NextPay, Vandar tokens + Kavenegar SMS), **notifications** (broadcast to all cafes, list/delete), **app settings**, **feature flags**, **cafes** (suspend/activate), and **support tickets**. | Admin page | Path | |------------|------| | Integrations | `/fa/admin/integrations` | | Notifications | `/fa/admin/notifications` | Apply migration `SystemAdminPlatform` if the database was created before this feature. ## Merchant support Dashboard → **پشتیبانی** (`/fa/support`) — open tickets; platform admins reply from **Admin → Tickets**. ## Appearance (per café) Each café can customize **dashboard + guest menu** colors in **تنظیمات → ظاهر و رنگ‌بندی**: - **17 color palettes** (Meezi green, ocean, wine bar, espresso, …) - **8 panel styles** (flat, modern, glass, minimal, bold, soft, elevated, outline) - **6 menu layouts** (cards, compact, grid, list, magazine, classic) - **Density** + **corner radius** - **9 custom hex colors** (primary, secondary, accent, background, …) Preset catalog: [`data/cafe-theme-presets.json`](../data/cafe-theme-presets.json) ## Category icons Menu categories support **preset icons** (26 types) with **10 design styles**: flat, modern, real, minimal, outline, soft, bold, gradient, pastel, duotone — or pick from **100+ emojis** grouped by category theme. - Pick style + food/drink preset under **مدیریت منو → دسته جدید → آیکون آماده** - Catalog: [`data/category-icon-presets.json`](../data/category-icon-presets.json) ## Menu (Food-101) - **48** demo items across 6 categories — see [`data/demo-menu-food101.json`](../data/demo-menu-food101.json) - Images: Unsplash URLs in [`data/menu-image-manifest.json`](../data/menu-image-manifest.json) until you import real JPEGs - Items without a Kaggle file still get a class-matched fallback image ### Reseed menu (existing DB) Restart the API in Development — `DevelopmentDataSeeder` adds any **missing** catalog rows and refreshes images/translations. ### Import real Food-101 photos (optional) 1. Download [Food-101](https://www.kaggle.com/datasets/kmader/food41) (or `food-101` images folder). 2. Run: ```bash dotnet run --project tools/MenuImageImporter -- --food101 "C:\path\to\food-101\images" --cafe cafe_demo_001 ``` 3. Update manifest `imageUrl` to `/uploads/cafe_demo_001/{itemId}.jpg` or restart API seeder after copying files. ### Regenerate manifest from catalog ```bash dotnet run --project tools/SyncMenuManifest/SyncMenuManifest.csproj ``` ## Tables - Table **1** QR: `demo_table_01` → `/api/q/demo_table_01`