MIT License

项目介绍

enatega/food-delivery-multivendor 是一个托管在 GitHub 上的开源项目,主要使用 JavaScript 编写,采用 MIT License 许可证,目前获得 1.4k 个 Star、616 次 Fork。

仓库全名
enatega/food-delivery-multivendor
开源许可证
MIT License
Star 数
1.4k
Fork 数
616
未关闭 Issue
104

README 摘要

Enatega Multi Vendor Delivery Management System A modern and customizable platform for managing online ordering and logistics across industries. The Enatega Multi Vendor Delivery Management System is designed for businesses looking to deploy a complete, ready-to-use platform for running their online ordering and delivery operations. Whether it is food or grocery delivery, parcel logistics, home services, flowers,…

完整内容见 GitHub 原始 README 或本页 。

常见问题

food-delivery-multivendor 用什么语言开发?

主要使用 JavaScript 编写,采用 MIT License 许可证,目前有 1.4k 个 Star。

food-delivery-multivendor 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 food-delivery-multivendor 的源码?

可以直接克隆仓库:git clone https://github.com/enatega/food-delivery-multivendor.git,默认分支为 main;安装与运行步骤见仓库 README。

food-delivery-multivendor 最近还在维护吗?

仓库最近一次更新为 10月7日,当前有 104 个未关闭 Issue;Star 数为 1.4k,可作为社区活跃度的参考。

README

Enatega Multi Vendor Delivery Management System

A modern and customizable platform for managing online ordering and logistics across industries.

Static Badge Stars Forks GitHub release (latest by date) GitHub contributors Open Pull Requests Activity YouTube Channel Company Website Closed Issues Closed Pull Requests

Static Badge Static Badge Static Badge Static Badge


The Enatega Multi Vendor Delivery Management System is designed for businesses looking to deploy a complete, ready-to-use platform for running their online ordering and delivery operations. Whether it is food or grocery delivery, parcel logistics, home services, flowers, pharmacy orders, or other delivery-based businesses, Enatega can be adapted to your needs. Built with ease of use and intuitiveness in mind, the Enatega system supports multiple vendors and multiple service regions. With separate applications for customers, vendors and delivery agents, along with a powerful admin dashboard, Enatega enables you to launch and operate your own end-to-end ordering and delivery ecosystem without building everything from scratch.

The solution is fully open source, but the backend and API are proprietary and can be licensed as part of a paid package.



:question: What is included:

Enatega provides a complete set of software components, including:

  • Enatega Multi Vendor Customer App
  • Enatega Multi Vendor Rider/Driver App
  • Enatega Multi Vendor Vendor/Store App
  • Customer Ordering Website
  • Admin Web Dashboard
  • API Server
  • Analytics Dashboard using Expo Amplitude
  • Error monitoring and reporting with Sentry

:fire: Features:

  • Authentication using Google, Apple, and Facebook
  • Dynamic home sections for highlighting top vendors and services
  • Push notifications and email alerts for account creation, order updates, and delivery progress
  • Real-time tracking of delivery agents and in-app chat
  • Email and phone number verification
  • Location-based vendor discovery on Maps and Home Screen
  • Multi-language support and customizable themes
  • Ratings and reviews for orders and service experiences
  • Vendor/service details including ratings, schedules, delivery timelines, offerings, location, minimum order or service amount, and more
  • Payment integrations including PayPal and Stripe
  • Order and booking history with the ability to favorite vendors
  • Address management with Google Places suggestions and Maps integration
  • Analytics and error reporting with Amplitude and Sentry
  • Support for item/service variations, notes, pickup and delivery modes, and customizable timing options

:repeat_one: Setup:

As we’ve mentioned above, the solution includes five separate modules. To setup these modules, follow the steps below:

To run the module, you need to have nodejs installed on your machine. Once nodejs is installed, go to the directory and enter the following commands

The required credentials and keys have been set already. You can setup your own keys and credentials

The version of nodejs should be between 18 to 20 (with 16 as minor version and 0 as patch)

Guide Badge

:information_source: Prerequisites:

App Ids for Mobile App in app.json

  • Facebook Scheme
  • Facebook App Id
  • Facebook Display Name
  • iOS Client Id Google
  • Android Id Google
  • Amplitude Api Key
  • server url

Set credentials in API in file helpers/config.js and helpers/credentials.js

  • Email User Name
  • Password For Email
  • Mongo User
  • Mongo Password
  • Mongo DB Name
  • Reset Password Link
  • Admin User name
  • Admin Password
  • User Id
  • Name

Set credentials in Admin Dashboard in file src/index.js

  • Firebase Api Key
  • Auth Domain
  • Database Url
  • Project Id
  • Storage Buck
  • Messaging Sender Id
  • App Id

NOTE: Email provider has been only been tested for gmail accounts

:hammer_and_wrench: Technologies:

Expo React-Navigation Apollo GraphQL ReactJS NodeJS MongoDB Firebase
Enatega Logos Enatega Logos Enatega Logos Enatega Logos Enatega Logos Enatega Logos Enatega Logos
React Native React Router GraphQL ExpressJS React Strap Amplitude
Enatega Logos Enatega Logos Enatega Logos Enatega Logos Enatega Logos Enatega Logos

:framed_picture: Screenshots:

Rider App
Store APP
Customer App
Customer Web
Dashboard

:wrench: High Level Architecture:

:book: Documentation

Find the link for the complete documentation of the Enatega Multi Vendor Solution here.

:tv: Demo Videos:

Admin Dashboard Demo Mobile App Demo
Video Video

:iphone: Demos:

Customer App Rider App Store App Customer Web Admin Dashboard
Enatega Logos Enatega Logos Enatega Logos Enatega Logos Enatega Logos
Android Logo iOS Logo Android Logo iOS Logo Android Logo iOS Logo

:people_holding_hands: Contributors:

:warning: Disclaimer:

The frontend source code for our solution is completely open source. However, the API and backend is proprietary and can be accessed via a paid license. For further information, contact us on the channels provided below.

:mailbox_with_mail: Contact Us:

Check out the Product Page and Pricing and more for Enatega Multivendor Food Delivery Solution

:computer: Project Setup Guide

This section provides detailed instructions for setting up and running each component of the Enatega Multi-vendor Food Delivery Solution.

Quick Run Matrix

Module Development Production
API cd ../enatega-multivendor-api && npm install && npm run start:dev cd ../enatega-multivendor-api && npm install && npm start
Admin cd enatega-multivendor-admin && nvm use && npm install && cp .env.example .env.local && npm run dev cd enatega-multivendor-admin && nvm use && npm install && cp .env.example .env.local && npm run build && npm run start
Web cd enatega-multivendor-web && nvm use && npm install && cp .env.example .env.local && npm run dev cd enatega-multivendor-web && nvm use && npm install && cp .env.example .env.local && npm run build && npm run start
Customer App cd enatega-multivendor-app && nvm use && npm install && npm run ios or npm run android cd enatega-multivendor-app && nvm use && npm install && npm run build:production
Store App cd enatega-multivendor-store && nvm use && npm install && npm run ios or npm run android cd enatega-multivendor-store && nvm use && npm install && eas build --profile production -p all
Rider App cd enatega-multivendor-rider && nvm use && npm install && npm run ios or npm run android cd enatega-multivendor-rider && nvm use && npm install && eas build --profile production -p all
  1. Start the API from ../enatega-multivendor-api
  2. Start enatega-multivendor-admin or enatega-multivendor-web
  3. Start the mobile app you need from enatega-multivendor-app, enatega-multivendor-store, or enatega-multivendor-rider

Enatega Admin Dashboard (Next.js)

The admin dashboard allows you to manage restaurants, orders, riders, and more.

# Navigate to the admin dashboard directory
cd enatega-multivendor-admin

# Install dependencies
npm install

# Start the development server
npm run dev

After running these commands, open your browser and navigate to http://localhost:3000 to access the admin dashboard. You can also CTRL+click on the localhost link that appears in your terminal.

Enatega Customer Web (React.js)

The customer web application allows users to browse restaurants and place orders through a web browser.

# Navigate to the customer web directory
cd enatega-multivendor-web

# Install dependencies
npm install

# Start the development server
npm start

After running these commands, the application will be available at http://localhost:3000 in your web browser.

Enatega Customer App (React Native)

The customer mobile application allows users to browse restaurants and place orders on their mobile devices.

# Navigate to the customer app directory
cd enatega-multivendor-app

# Install dependencies
npm install

# Start the Expo development server
npx expo start -c
# OR
npm start -c
Testing on a Physical Device with Expo Go
  1. Press s in the terminal to switch to Expo Go mode
  2. Scan the QR code displayed in the terminal:
    • Android: Open the Expo Go app and scan the QR code
    • iOS: Use the device’s camera app to scan the QR code

Enatega Rider App (React Native)

The rider app allows delivery personnel to manage and complete deliveries.

# Navigate to the rider app directory
cd enatega-multivendor-rider

# Install dependencies
npm install

# Start the Expo development server
npx expo start -c
# OR
npm start -c
Testing on a Physical Device with Expo Go
  1. Press s in the terminal to switch to Expo Go mode
  2. Scan the QR code displayed in the terminal:
    • Android: Open the Expo Go app and scan the QR code
    • iOS: Use the device’s camera app to scan the QR code

Enatega Restaurant App (React Native)

The restaurant app allows restaurant owners to manage orders and their menu.

# Navigate to the restaurant app directory
cd enatega-multivendor-restaurant

# Install dependencies
npm install

# Start the Expo development server
npx expo start -c
# OR
npm start -c
Testing on a Physical Device with Expo Go
  1. Press s in the terminal to switch to Expo Go mode
  2. Scan the QR code displayed in the terminal:
    • Android: Open the Expo Go app and scan the QR code
    • iOS: Use the device’s camera app to scan the QR code

Building Development Versions

For all mobile apps (Customer, Rider, and Restaurant), you can create development builds using EAS Build.

Configure EAS Build
# From the app directory (customer, rider, or restaurant)
eas build:configure

Select your desired platform:

  • android
  • ios
  • all
Build for Android
eas build --platform android --profile development

This will create an APK file that you can install directly on your Android device.

Build for iOS
eas build --platform ios --profile development

For iOS simulator builds, modify the eas.json file to include:

"development": {
  "developmentClient": true,
  "distribution": "internal",
  "channel": "development",
  "ios": {
    "simulator": true
  },
  "android": {
    "buildType": "apk"
  }
}

Then run:

eas build --platform ios --profile development

评论

暂无评论