Profile PictureEntreprise Technodive
$14.99

eFood v11.3 – Food Delivery App with Laravel Admin Panel + Delivery Man App

Add to cart

eFood v11.3 – Food Delivery App with Laravel Admin Panel + Delivery Man App

$14.99

Documentation

Overview:


eFood is a multi-branch food delivery restaurant management system, including a user app, a website, and a deliveryman app. This powerful system features a high-performance admin panel built on the Laravel framework (v10), enabling you to efficiently manage the entire system and accelerate the growth of your restaurant business.

Condition préalable:

Basic:
Setup Essentials:

Requirements for installing eFood.

Admin Panel (V11.3)

  • PHP 8.1 or higher.
  • MySQL 5.7 or higher.
  • Laravel 10.

Mobile App (V11.3)

  • IDE: Android Studio Ladybug | 2024.2.1 Patch 3.
  • Flutter SDK (3.29.2 stable).
  • Install JDK 17.
  • Xcode 16.2 for generating IPA files.


Since eFood is a complete system with many web and mobile modules, having basic knowledge of server-side and mobile app development is required if you want to handle installation, configuration, and branding on your own.

  • IDE for mobile and web development: we recommend Android Studio and VSCode.
  • Flutter SDK and JDK: with path configured in your IDE.
  • Real server: server-related knowledge like Apache or local machine server; we recommend using a real server.
  • Server knowledge: we recommend cPanel on your server for quick installation.
  • Basic knowledge of PHP, Dart, Laravel, and Flutter if you plan to make customizations yourself (not mandatory).
  • Basic knowledge of Google Cloud and Firebase.

Server

  • eFood requires PHP v8.1+ and MySQL 8.0+.
  • Mod_rewrite Apache.
  • BCMath PHP extension.
  • Ctype PHP, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML, Zip, Fileinfo, Gd, sodium Extension.

In most servers, these extensions are enabled by default, but you should check with your hosting provider.

Mobile app

  • Android studio.
  • Flutter SDK setup (version 3.29.2 Stable).
  • JDK with path setup (only for vs code).
  • Xcode for IPA file build.


Environment Setup:

Flutter SDK

You have to download and setup flutter from flutter.dev. You can follow documentation with your own device.

Windows: https://docs.flutter.dev/get-started/install/windows

Mac: https://docs.flutter.dev/get-started/install/macos

Linux: https://docs.flutter.dev/get-started/install/linux

Local server (not mandatory)

If you want to run the admin panel in your local machine for test purpose or need to customize something you can install but we recommend test the system in a live server.


Admin Panel:

Install on server

1. Database Configuration:

Before starting the admin installation, the database must be configured for the application.

For creating the database, the following ways must be maintained-

  • Go to MySQL Databases.

  • Create a new database for the application

  • Create a user for the database.

  • Add the user to the database.

  • Give privileges to the user.

2. Admin Panel Installation

After downloading the code from codecayon upload the Admin New Install.zip in your directory and extract the zip file. 6ammart can be installed on your main domain or subdomain: For Example, yourdomain.com or subdomain.yourdomain.com.

6ammart requires an SSL certificate to be installed on your domain to work with all the services. A free SSL certificate can be easily installed on your domain using sslforfree.com

Let’s start the installation-

  • First hit your site URL and it will automatically take you to the installation. Click Get Started to start.

  • Step 1: All the required extensions and permissions must be enabled. Check the required information if everything is OK then click on Process Next.

  • Step 2: Provide your codecanyon username and purchase code and Continue.

  • If you find the following page, you must activate your domain. Now fill up the information and proceed.

  • Step 3: Now you need to set the Database host, Database name, Database username & password and click Continue. If the database in your server then the host is localhost.

  • Step 4: Now you need to import the SQL file. For this just press Click Here to import the database.

  • If you find the following page that means your database is not clean. Click Force Import Database to import the database which will clear your database first then import the application’s database.

  • Step 5: Now fill up the information and click Complete Installation.

  • Congratulations! Your software is ready to run. Click on the Admin Panel or view Landing Page.

Mandatory setup

Map Configuration:

Client should buy Map API from Google for enabling the maps into the panels. Without buying those API’s client cannot load Google map into the panels. For generating map api key you can watch this video. Now go to your admin panel then “Third party APIs” menu, here you will find two inputs for map api key client and map api key server. You can restrict the client with admin panel domain and the server key with your server ip address. If you don’t want any restriction then you can use single api key for both field.

Business Setup:

In the admin panel we have a menu called Business Setup where you can set your logotimezonecountrytime formatlocationcurrency and many more things.

Mail Configuration:

Mail Configurations part admin can set his Mailer name, host, driver, user name, Email ID and his own encryption method and password for this SMTP Mail setup. This configuratin is used for sending password recovery mail for restaurant.

Firebase Configuration (for notification):

The Firebase Push Notification will send messages for every order status. If admin turn on the status then with order status change customers, delivery man will get status notification and if the admin turned off that then no one will get that message. To set up firebase notification go to admin panel 3rd Party > Firebase Configuration > Push Notification.

  1. Go to https://console.firebase.google.com/
  2. If you don’t have a project, create one.
  3. Click on the settings icon from left sidebar (beside Project Overview) & Go to Project Settings.
  4. From the Project Settings, go to Service Accounts tab.
  5. Click on Generate new private Key to generate the key. It will automatically download a .json file.
  6. Open the file with any text editor, copy the contents in it, and add those to Service File Content in 3rd Party > Firebase Configuration > Push Notification in admin panel.

The Firebase Push Notification will send messages for every order. If the admin turns on the status and selects Firebase as notification type  then the Admin, the Branch will get the order notification and if the admin turned off that then no one will get that order notification message. To set up firebase notification go to the admin panel 3rd Party > Firebase Configuration > Push Notification.

Payment Configuration:

In this part Admin will introduce the payment gateways. Cash on delivery and digital Payment like SSLCOMMERZ, Razor pay, Paypal, Stripe, Paystack, Senang Pay, Flutterwave, MercadoPago, Payment accept are available for payment gateways. He can make the necessary setup of making the status active and inactive of those payment gateways as well.

SMS Module Configuration:

SMS Module is used for SMS Gateways for OTP sending in the simplest way of user verification. Customer will get OTP when they create their own account and for password recovery.

Customization

Translate admin panel:

For translating your admin and vendor panel go to this file: resources/lang/en/messages.php and change all the value of each key( 'key'=>':variable value') . Please don’t change any key or variable. A variable is a word that starts with a “:”, it can be placed after the value or inside a value like 'config\your\account'=>'Config your :method account', here :method is a variable and config\your\account is a key. You can change the position of a variable inside a value but you can’t remove it.


3rd Party Setup

Web Push Notification!:

  • Create your own Firebase Web app from https://console.firebase.google.com with your own web domain/any name.
  • Generate key pair from under Project Setting->Web configuration.
  • Select The Web App from Project Setting->General->Web apps, and you will find the SDK setup and configuration section
  • Select Config and copy the Firebase configuration object
  • Go to <project>/web/index.html and set firebaseConfig with the Firebase configuration object value.

/web/index.html

  • Also go to <project>/lib/main.dart and change FirebaseOptions argument value with the Firebase configuration object value.
    /lib/main.dart

Web Push Notification Sound Customization:

If you want to change the default notification sound of the web then go to <project>/assets/notification.wav and rand replace notification.wav with your own notification.wav

Facebook Login:

  • If you want Facebook login in your project then create your own app form https://developers.facebook.com/apps
  • Configure your app form Settings->Basic with your own Display name, Contact email, Privacy Policy URL, Terms of Service URL, App icon
  • Add your platform (web/android/ios) with click Add platform and configure your app.
  • Add Facebook Login form products section.
  • To Configuration setting in App->Facebook Login->Settings->Client OAuth settings enable Client OAuth login, Web OAuth login, Enforce HTTPS, Use Strict Mode for redirect URIs, Login with the JavaScript SDK.
  • Also, you need to add yor Allowed Domains for the JavaScript SDK (ex- https://efood-web.6amtech.com)
  • To get profile information you need to request access in App Review->Permissions and features get access for public_profile
  • Now open your flutter project and go to <project>/lib/main.dart and replace it with your Facebook appID
  • For Android go to <project>/android/app/src/main/res/values/string.xml and set value.

/android/app/src/main/res/values/

  • For ios go to ios/Runner/Info.plist and set value

ios/Runner/Info.plist

  • For web go to <project>/lib/main.dart set your appID.

/lib/main.dart

Google Login

  • If you want to enable your Google login then go to https://console.firebase.google.com and open your Project->Authentication->Sign-in method-> Add new Provider->Additional providers then select Google and enable, finlay Save.
  • For Android, you need to set fingerprint in Project->Project settings-> Android apps-> add fingerprint then enter your SHA1 and SHA256 and Save.
  • After published on Playscape you need to add your SHA1 and SHA256 form App integrity.
  • To find App integrity App signing, go to Google Play Console Project-> Release-> Setup-> App integrity-> App signing
  • Download your Google service and Copy that file and paste it under <project>/android/app/ the folder.
  • Go to https://console.cloud.google.com and select your Firebase project, you can find your Client ID in, APIs & Services-> Credentials -> OAuth 2.0 Client IDs then select Web Client and finally copy the Client ID.
  • For ios go to <project>/ios/Runner/Info.plist and add your Client ID

/ios/Runner/Info.plist

  • For web go to <project>/web/index.html and set your CLIENT_ID

/web/index.html


Add to cart
0 sales

eFood is a Multi Branch supported food delivery restaurant management system that comes with both the user app and delivery man app. With this powerful system, you will get a powerful admin panel built with Laravel Framework that will help you manage the whole system smartly which accelerates your restaurant business.

Size
109 MB
Copy product URL