Create UberEats with Python/Django and Swift 3


Leo Trieu

One-time payment

Lifetime Access

Full Source Code

Discussion Support

What are we building?

We are going to build a [Uber app for Food] system with a Web based Dashboard for restaurants and an iOS App for customers who order food and couriers who deliver food. But you can apply what you will be learning to any business models you want.

What skills will we learn during this project?

[Python 3 & Django]

  • How to quickly create web app with Python 3 and Django

  • How to create Restful APIs for modern web technologies

  • How to deploy a web app on live host Heroku

  • Create bar charts, pie charts for your statistic functions

  • Use Facebook to authenticate your users

  • Create Models for objects using in your business ideas

  • Create Forms integrated with models easily

  • How to use Bootstrap and customise your own style with CSS

  • How to work with payment gateway Stripe to handle payment process

[Swift 3 & Xcode 8]

  • How to design your iOS app with XCode 8

  • How to use AutoLayout effectively

  • How to work with Swift 3

  • Work with JSON and Restful APIs in iOS apps

  • Process real-time locations on Map

  • Handle Stripe payments on iOS app

  • Draw Revenue Chart on iOS app

What features will we build in this project?

[Web app for Restaurants]

  • Super Admin Dashboard to handle everything in the system.

  • Sign in/Sign out process for Restaurants.

  • Hosting the web app on Heroku.

  • Page for Account information.

  • Page for Restaurant to upload images and create Menu.

  • Page for managing all Orders from Customer.

  • Real-time notification when new orders coming in.

  • Statistic bar charts and pie charts.

  • Process to listen and response API requests from clients.

  • Visa & Credit card process with Stripe.

  • Real-time updating Drivers's location on the Map.

[iOS app for Customers]

  • Sign In/Sign Up with Facebook.

  • List all available Restaurants.

  • List the menu of a specific Restaurant.

  • Details of a meal on the menu.

  • Ordering meals

  • Handling address location on Google Map

  • Processing Visa & Credit cards when ordering food

  • Real-time showing Driver's location

[iOS app for Drivers]

  • Sign In/Sign Up with Facebook.

  • List all ready Orders to pick up.

  • Details of an Order with the route on Google Map.

  • Completing an Order.

  • Weekly Revenue chart on iOS app

Sample Videos

Video # 1
Video # 2
Video # 3
Video # 4
Video # 5
  • Photo

    Thorstein Nordby

    Fantastic course.

  • 0c86108262d2a91dfa94543f3e4d0ed6


    New to python, Leo made it possible to get something up a running quickly. Teamed with my son who codes for iOS we've taken this concept and made it our own.

  • Picture

    Oskar Stucki

    "Leo has a strong accent and is very difficult to understand at times. This course is not for beginners. Leo skips explaining the basic and foundational pieces while creating this app. You will find yourself lost just typing along not truly understanding the concept behind the magic. You will will not be able to replicate this process on your own because the lack of explanation on the fundamentals. This isn't a tutorial. It's more of a code along. A tutorial actually teaches which Leo fails to do." - I completely agree with this review. This project is also outdated and you run constantly into problems with problems related to versions of the packages used.

  • C01c20b80d2160ea8435e5fbefd92221

    Troy Zarger

    Leo has put together a course with some very interesting Technologies and that was my biggest draw. After getting into the course, I was even more pleased as the course content is top notch and easy to understand. Well done Leo! You must get this course if you have any interest in this technology stack.

  • 5ce1b3167a5b2d8aeaacc992862da0d3

    Dane Lams

    One of the best courses I have ever learned across over Udemy, Codeschool or other platforms. It really helps you to create your own app or startup. Seriously! Thanks Leo!

  • Cf82a63216f9cab766f67fd8388acfdf

    Kevin Her

    Leo has a strong accent and is very difficult to understand at times. This course is not for beginners. Leo skips explaining the basic and foundational pieces while creating this app. You will find yourself lost just typing along not truly understanding the concept behind the magic. You will will not be able to replicate this process on your own because the lack of explanation on the fundamentals. This isn't a tutorial. It's more of a code along. A tutorial actually teaches which Leo fails to do.

  • 88e425d4822136bd96e2944f4bd50609



  • 2935e55eb052a25b5b0b1d88705e55a8

    Michaela Weinreb

    Really clear and great support when getting stuck

  • 2804bad911366748890ff6c3025a1170


    Really clear and fast ! Amazing tutorial!

  • C823d4becf4a0bce285ff55c29b0709b

    Daniel Tavera

    The best course I've seen, step by step the whole course is a great job!

  • Photo

    Aleksandar Markovic

    Great Job Man !!! worth every penny this great course

  • 5a00b4ee4a13e807ec9beeb0f16955c2


    Amazing tutorial.. clear and concise..!!

  • Picture

    Miguel Basurto

    Even though the app should end as a great thing. The support I've received has been minimum. I got stocked and since then, about 3 months have passed without getting an answer.

  • 3a173ecc5c3480809d12823d9d4ea7af

    Eko Teguh Widodo

    Best tutorial i've seen. Recommended for others.

  • Ff0e50c789ac662450f0bf5a56a70d23


    One of the best tutorials I've ever seen. Everything working properly. Even later, after some apps updates I was able to make the changes by myself. Leo always helped to clarify doubts. I strongly recommend.

  • 758b94ac02290cf36d6352abb523f6de


    Thank you for providing the courses, really appreciate for your effort, the teaching material is clean and easy to understand.

  • Picture

    Jacky Tai

    Set- by step,I like this!

  • 4d2ec22fdfc18476094baff335b0cbd2

    Muflich Kamil

    Just perfect course! Leo make it pretty quick and easy for everyone. And also you can really build VALUE. Thanks, Leo!

  • Photo

    Abhijit Roy

    First time learning python and leo makes it so fast and easy to learn . Saves Lots of time and I can focus on real design. {{"Thanks leo": Thanks leo }}

  • Picture

    Kha Tran

    Building a real start-up project is definitely an exciting and quickest way to learn about programming. This is possible thanks to the clear and simple explanation of Leo. You can easily modify the code for your own website and mobile apps.

  • 63f6c546374454cc956b700228e1c6ea


    This is a great course, I have attended some courses before on youtube but they were just courses much difficult to understand. Uber eats is easy and simple to understand. I learned almost everything backend, front and apps development using swift. Great Course indeed.

  • 98f699f65a970fe03c7693062a075313


    One of the best courses for learn Python/Django and Swift. Simple and concise, Leo keeps expectations of helping you to build your own application. Good the challenge. Highly recommended!!

  • 596d5d07cd498875dab9fbe784770802

    Dean Moyes

    I like how Leo take his time explaining each concept clearly and methods in working python and Django. So far the ability to learn both Server side and Mobile side with Python and Swift is really nice. I feel by the end of this project I will come out working on any projects and make me confident. I am so far enjoying the project. It's worth your purchase.

  • E8a2df87c32253ae68c3f3bac55f447c

    Dane Markham

    I cannot recommend this class highly enough. It's so practical and real with useful information delivered in a manageable and encouraging way. Excellent course and Leo did a great job of explaining things

  • Starter

    • What are we building? 5:17  
    • Workflows Architecture 2:08  
  • Task 1: Setting up

    • Python 2:42  
    • Heroku 2:01  
    • Atom 2:59  
    • Postman 1:53  
    • Xcode 2:54  
    • Download Resources  
  • Task 2: [Python] - Get Started

    • Initialize project 9:08  
    • Creating Home Page 8:17  
    • Django Dashboard 3:35  
    • Adding Bootstrap 5:25  
  • Task 3: [Python] - Authentication for Restaurant Owners

    • Sign In & Sign Out 14:50  
    • Registration Page 9:30  
    • Registration Form 7:17  
    • Registration Function 15:03  
  • Task 4: [Python] - Heroku

    • Setting Up 3:47  
    • Configuration of static resources on Heroku 3:17  
    • Configuration of Database 9:12  
  • Task 5: [Python] - Authentication with Facebook

    • Create Facebook App 2:12  
    • Setting up Facebook Oauth 11:32  
    • Authenticate with Facebook token 9:13  
    • Authenticate Customers & Drivers 13:28  
  • Task 6: [Python] - Design Restaurant Dashboard

    • General Site Structure 5:12  
    • Advanced design for Restaurant 10:16  
    • Advanced design for Sign In - Sign Up pages 4:26  
  • Task 7: [Python] - Bootstrap

    • Add Bootstrap to Sign In - Sign Up pages 5:33  
    • Bootstrap Form 6:09  
    • Bootstrap for Dashboard 10:10  
    • Custom style for Dashboard 10:34  
  • Task 8: [Python] - Restaurant Dashboard - Meals

    • Restaurant Account Page 12:52  
    • Restaurant Add Meal Page 6:13  
    • Restaurant Add Meal function 6:43  
    • Restaurant List Meals Page 11:40  
    • Restaurant Edit Meals Page 6:51  
    • Improve Side Menu 4:50  
  • Task 9: [Python] - Restaurant Dashboard - Orders

    • Order Model 11:34  
    • Restaurant Order Page 10:35  
    • Restaurant Order Status 5:54  
  • Task 10: [Python] - RESTful APIs

    • About Restful API and Postman 4:59  
    • Restful API for Restaurants 8:17  
    • Fixing Logo link 3:18  
  • Task 11: [Python] - APIs for Customers

    • API Structure 3:43  
    • Getting Meals 6:39  
    • Creating Order 27:40  
    • Order Notification 15:12  
    • Getting the latest Order 14:29  
  • Task 12: [Python] - APIs for Drivers

    • API Structure 4:49  
    • Getting Ready Orders 3:59  
    • Picking up an Order 10:00  
    • Getting the latest Order of Driver 3:55  
    • Completing an Order 4:12  
    • Getting Driver's revenue 8:42  
  • Task 13: [Python] - Driver's location

    • Updating Driver Model 4:32  
    • Function to update Driver's location 11:54  
  • Task 14: [Python] - Reports and Charts

    • Report for Revenue 17:49  
    • Report for Top Meals 9:35  
    • Report for Top Drivers 7:42  
  • Task 15: [Python] - Stripe

    • Create Stripe Account 4:32  
    • Create Payment with Stripe 9:36  
  • [Python] - Challenges

    • 3 Challenges are waiting for you!  
  • Task 16: [Swift] - Design App for Customers

    • Creating your very first Xcode project 7:04  
    • Design Login Layout 11:09  
    • Create Side Menu Layout 14:54  
    • Design Restaurant List Layout 13:40  
    • Create Class for Restaurant View Controller 14:42  
    • Design Meal List Layout 16:11  
    • Design Meal Details Layout 16:38  
    • Design Tray Layout 17:26  
    • Create Class for Tray View Controller 10:03  
    • Design Credit Card Layout 10:56  
    • Design Order Layout 11:30  
    • Create Class for Order View Controller 11:22  
  • Task 17: [Swift] - Working with Facebook SDK

    • Install Alamofire, SwiftJSON and Facebook SDK 11:19  
    • Connection to Facebook 15:45  
    • Getting Facebook User Data 16:19  
    • Logging out from Facebook 13:45  
  • Task 18: [Swift] - Connect to Server via API

    • Create API Manager 12:31  
    • Create Login and Logout API 14:37  
    • Testing Login and Logout functions with Server 19:50  
  • Task 19: [Swift] - Working on Restaurants List

    • Create API to get List of Restaurants 11:17  
    • Create Restaurant Model 10:54  
    • Create Restaurant View Cell 14:19  
    • Create Search Bar function 5:38  
    • Create Activity Indicator for Restaurants List 5:41  
  • Task 20: [Swift] - Working on Meal List

    • Create API to get List of Meals 6:49  
    • Create Meal Model and Meal View Cell 12:54  
    • Create Meal List View Controller 10:45  
    • Create Activity Indicator for Meals List 11:16  
  • Task 21: [Swift] - Working on Meal Details

    • Displaying data on Meal Details 7:43  
    • Add functions to buttons 12:37  
    • Business Logic for Tray Items 23:34  
  • Task 22: [Swift] - Working on Tray View

    • General logic to display Tray View 11:19  
    • Displaying Meals on Tray 15:42  
    • Showing Location on Map 9:29  
    • Transform an address to a Pin on Map 7:55  
  • Task 23: [Swift] - Working on Payment and Order View

    • Create API to handle Orders and Payment 13:32  
    • Add Business Logic to Payment Process 18:14  
    • Display order details on Order View 13:46  
    • Showing Locations of Restaurant and Customer on Map 24:09  
  • Task 24: [Swift] - Design App for Drivers

    • Design Side Menu and Orders List Layout 9:54  
    • Add switching accounts function to Login View 11:47  
    • Design Ready Orders Layout 9:05  
    • Design Delivery Map Layout 9:45  
    • Design Revenue Statistic Layout 4:23  
  • Task 25: [Swift] - Working on Ready Orders View

    • Create API to get List of ready Orders 9:50  
    • Displaying data on Ready Orders View 11:49  
    • Add function to pick up an order 22:04  
  • Task 26: [Swift] - Working on Delivery Map View

    • Showing Customer details on Driver's map 15:49  
    • Showing Location of Restaurant and Customer on Map 5:00  
    • Update Driver's location to server 20:27  
    • Displaying Driver's location on Customer's Map 16:36  
    • Customise Drop Pin on Map and Two Simulators 14:53  
    • Completing an Order 13:03  
  • Task 27: [Swift] - Working on Revenue Statistic View

    • Install Charts and Create API for Driver's Revenue 6:45  
    • Showing Chart of Driver's revenue 12:41  
  • [Swift] - Challenges

    • 3 Challenges are waiting for you!