FoodFeast · User App

Frequently Asked Questions

Answers to the most common customization and setup questions from FoodFeast buyers — click any question to expand the answer.

Version: 1.0 Questions count: 12 Support email: Support@zainclouds.com
1 Section

Branding & identity

Q How do I change the app name? ▼

Android — update the label in the manifest:

android/app/src/main/AndroidManifest.xml
<application android:label="Your App Name" ...>

iOS — open ios/Runner/Info.plist and update both CFBundleDisplayName and CFBundleName.

Also update name: foodfeast in pubspec.yaml if you want the project name to match.

Q How do I change the package name / Bundle ID? ▼

The Android package name lives in android/app/build.gradle (applicationId) and build.gradle.kts (namespace). The iOS Bundle ID is PRODUCT_BUNDLE_IDENTIFIER in ios/Runner.xcodeproj/project.pbxproj.

Renaming these manually across native folders is error-prone — use the official rename tool instead. Run from the project root:

dart pub global activate rename
rename --bundleId com.yourcompany.yourapp
After changing the package name, re-register the new ID in Firebase and download fresh google-services.json / GoogleService-Info.plist files — otherwise push notifications will stop working.
Q How do I change the app logo and splash screen? ▼

In-app logo: replace assets/images/app_logo.png and assets/svg/foodFeastLogo.svg.

Launcher icons: replace the images in android/app/src/main/res/mipmap-*/ic_launcher.png and ios/Runner/Assets.xcassets/AppIcon.appiconset/ — or generate all sizes automatically from one PNG using the flutter_launcher_icons package.

Splash screen: the native launch background is styled in android/app/src/main/res/drawable/launch_background.xml (@style/LaunchTheme) and ios/Runner/Assets.xcassets/LaunchImage.imageset/.


2 Section

Configuration & keys

Q How do I change the API URL? ▼

Open the constants file and point both URLs to your own hosted Laravel domain:

lib/app/constants/app_constants.dart
static const baseUrl  = "https://your-domain.com/api/";
static const baseUrl1 = "https://your-domain.com/storage/";

Keep the /api/ and /storage/ endings exactly as they are. Then rebuild clean so the new endpoints take effect:

flutter clean && flutter pub get
Q How do I change the Firebase project? ▼
  1. Create a new project in the Firebase Console and register both your Android applicationId and iOS PRODUCT_BUNDLE_IDENTIFIER.
  2. Download the new google-services.json into android/app/.
  3. Drag GoogleService-Info.plist into the Runner folder inside Xcode (ios/Runner/) with Copy items if needed checked.
  4. Update the Dart config automatically:
flutterfire configure

This rewrites lib/firebase_options.dart with your project's API keys and IDs.

Q How do I change the Google Maps API key? ▼

In Google Cloud Console, enable these 5 APIs, then generate a key: Maps SDK for Android, Maps SDK for iOS, Geocoding API, Geolocation API, Places API.

Android:

android/app/src/main/AndroidManifest.xml
<meta-data
  android:name="com.google.android.geo.API_KEY"
  android:value="YOUR_KEY"/>

iOS — in ios/Runner/AppDelegate.swift, add import GoogleMaps at the top, then inside didFinishLaunchingWithOptions:

GMSServices.provideAPIKey("YOUR_KEY")

3 Section

Business & features

Q Can I use this app for a business other than food delivery? ▼

Yes. While FoodFeast is structured around restaurants and food items (Store, Product, Dine-In, Add-ons), the Clean Architecture and generic data models (stores, categories, products) make it easy to adapt for grocery delivery, pharmacy delivery, or general e-commerce.

To rebrand the experience: customize UI text strings across the app, replace category vector icons inside assets/svg/, and edit the translation dictionaries in assets/translations/en.json and ar.json.

Q Can I add new payment gateways? ▼

Yes. The app already integrates online gateways (PayPal, Stripe, Razorpay) dynamically via a secure WebView checkout (PayPalPaymentScreen at lib/pages/resturant/presentation/screen/paypal_payment_screen.dart), alongside built-in Wallet and Cash on Delivery.

  • Enable an existing gateway: enter your live merchant keys in the Admin Panel → Business Settings → Payment Method Settings — no code changes needed.
  • Add a brand-new regional provider: integrate the provider's PHP SDK on the backend checkout route, then add a corresponding checkout WebView redirection state in check_out_cubit.dart.

4 Section

Updates & troubleshooting

Q Why do I get a CORS or "Connection Refused" error when testing? ▼

If baseUrl points to localhost (http://127.0.0.1:8000/api/), emulators and physical devices can't reach your computer's loopback network. Fix by environment:

Where you're testingUse this baseUrl
Android emulatorhttp://10.0.2.2:8000/api/
Physical device (same Wi-Fi)http://192.168.1.X:8000/api/ (your LAN IP)
ProductionPublic HTTPS domain with a valid, trusted SSL certificate

5 Section

Still stuck?

If your question isn't answered here, we're happy to help:

  • 📖 Check the Installation & Setup Guide and App Documentation included in your download
  • 💬 Reach us via the CodeCanyon support tab on the item page
  • 📧 Email: Support@zainclouds.com · Mon–Fri, 9am–6pm (GMT+5) · replies within 24–48 business hours