DEV Community

Hammad
Hammad

Posted on

Enatega: Open-Source Food Delivery App to Empower Your Startup

Image description

Introduction

We're thrilled to announce that Enatega, our comprehensive delivery management software, is now open-source! After four years of development and over 100 deployments, we're excited to empower you to launch your own food delivery business or any relevant delivery service with Enatega.

Here's a glimpse of what Enatega offers:

  • Effortless Setup: No complex workflows or tools – get started with a few commands to run the project locally.
  • Cross-Platform Flexibility: Enatega works seamlessly across platforms, allowing for effortless testing on your existing emulators or devices.
  • Open-Source Advantage: Enatega provides live demos, documentation, and video tutorials, giving you the knowledge to navigate the platform with ease.

Dive into the source code and get started here:
https://github.com/ninjas-code-official/food-delivery-multivendor

Our Journey to Open Source

Enatega's story began four years ago as a side project at Ninjas Code, our software development agency. We envisioned launching a local delivery app while offering development services. Our initial goal was to compete with a local food delivery company that we felt had shortcomings we could address.

Being developer-focused, we lacked the marketing expertise to compete with industry giants. Recognizing this, we pivoted to helping others establish their delivery ventures. Initially, we relied on third-party marketplaces, achieving initial success. Unfortunately, these marketplaces faced closure, forcing us to adapt.

Leveraging our development expertise, we identified open-sourcing our app repository as the optimal solution. This approach has garnered significant traction without extensive marketing efforts. We believe in empowering contributors by granting them project visibility and real-world development experience on a solution used by over 100 startups.

To ensure financial sustainability, we offer a back-end license with an open API. While the source code remains proprietary for licensed users, this model acknowledges that some businesses might require modifications or customizations to fit their specific needs.

Enatega App Unveiled

Enatega Multivendor is a feature-rich, multivendor food delivery solution catering to iOS, Android, and web platforms. It utilizes Amplitude for a robust dashboard and analytics experience. We've prioritized exceptional mobile and web app design, ensuring a complete solution that seamlessly integrates with any meal delivery service.

The mobile app leverages React Native and Expo for development. React powers the dashboard panel and customer web app, while GraphQL facilitates communication between web and mobile components. Additionally, the solution utilizes Node.js with MongoDB for API creation.
Enatega boasts a comprehensive feature set to fulfill all your restaurant or food delivery application needs. Here are some highlights:

Customer Mobile/Web App:

  • Email and phone number verification
  • Secure login via Google, Apple, and Facebook
  • Location-based restaurant discovery on map and home screen
  • Detailed restaurant information, including reviews, ratings, hours, delivery schedules, menus, and location with minimum order requirements
  • Effortless address addition with Maps integration and Google Places suggestions
  • Error analytics and reporting powered by Amplitude and Sentry
  • Push notifications and emails for account creation, order status updates, and global announcements
  • Real-time rider tracking with chat functionality
  • Multi-language and theme support
  • Rating and review features for orders
  • Payment integration via PayPal and Stripe
  • Order history with favorite restaurant management
  • Options for adding food variations and notes to restaurants
  • Pick-up and delivery options with flexible timings
  • Voucher and tipping functionalities
  • Robust search functionality for restaurants and items

Restaurant Application:

  • Order alerts via ringer and push notifications
  • Time limits for order acceptance and meal preparation
  • Print invoice option
  • Delivered order history
  • Online/offline status management
  • Order details with customer information

Rider Application:

  • Real-time order status updates
  • New order alerts via push notifications and ringer
  • Map integration with markers for delivery address and restaurant location
  • Time limits for order acceptance and meal preparation display
  • Distance and estimated travel time to destination (restaurant and customer)
  • Real-time chat with customer option with push notifications for received chats
  • Order history (in progress and new)
  • Instant wallet deposits for delivery fees, withdrawal options, and wallet history
  • Online/offline status management

Admin Dashboard:

  • Role-based administration, whereby the administrator has access to all features while the vendor (the owner of the restaurant) only has access to the management of their own establishments
  • Management of Restaurants, Vendors, Restaurants Section
  • Defining Zones for Riders and assigning creating zones to Riders
  • Managing withdrawal requests from riders and commission rates
  • Configuration of application and global level order status management
  • Restaurant orders stats and managing their stripe account for receiving commission directly
  • Restaurants managing their timings and defining delivery bounds where they can operate
  • Restaurants’ menus feature with complete options to add any variety of food with a discount feature
  • User, Ratings, Coupon, and tipping option management

Contribute to Our Open-Source Project

Image description
We actively seek contributors to make Enatega even better, and with your help, it's possible! Our tech stack utilizes in-demand technologies, making this a fantastic opportunity to contribute and enhance your portfolio. We have a vibrant Discord community – feel free to join and ask questions: https://discord.gg/774fJ72qwH

Here are two ways you can contribute:

  1. Create Issues: Identify areas for improvement and report them as issues.
  2. Create Pull Requests (PRs): If you have the solution to an existing issue, propose a PR with your fix. To create a PR, first fork the repository, establish your local branch, and claim the issue by commenting on it. We've designated specific issues as "good first issues" – a perfect entry point for beginners. After implementing your changes, submit a PR for review by our development team. Upon successful merging, you'll be acknowledged as a contributor, and your name will be incorporated into our contributor list. Thank you for taking the time to explore this blog. We eagerly await your contributions to the project!

Top comments (0)