Skip to content

NLP | AI-powered food ordering chatbot built using Dialogflow ES, FastAPI, and MySQL, supporting conversational ordering, dynamic order management, and order tracking.

Notifications You must be signed in to change notification settings

srushtin24/Food-Ordering-ChatBot-using-Dialogflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

25 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Food Ordering ChatBot using Dialogflow

This project is an AI-powered Food Ordering Chatbot designed to simulate a real-world food ordering and tracking experience. The chatbot allows users to place food orders conversationally, modify orders dynamically, complete orders, and track order status โ€” all through natural language interaction.

The system is built using Dialogflow ES for intent handling, FastAPI for backend webhook processing, and MySQL for persistent order storage.

This project demonstrates strong concepts in backend development, stateful conversations, API integration, and database-driven business logic.

๐Ÿงฉ Problem Statement

Traditional food ordering systems rely on rigid user interfaces and manual navigation.
This project explores how conversational AI can simplify the food ordering experience by allowing users to place, modify, and track orders using natural language, while maintaining conversational state and backend consistency.

โœจ Key Features

๐Ÿ—ฃ๏ธ Natural language food ordering using Dialogflow
โž• Add multiple food items with quantities
โž– Remove items partially (e.g., remove 1 biryani from 2 biryani)
๐Ÿ”„ Maintain session-based in-progress orders
๐Ÿ“ฆ Generate unique order IDs on order completion
๐Ÿ“ Track order status using order ID
๐Ÿ—„๏ธ Persistent storage using MySQL & stored procedures
๐ŸŒ Web-based chatbot UI using Dialogflow Messenger

๐Ÿ› ๏ธ Tech Stack

  1. Frontend
    • HTML
    • CSS
    • Dialogflow Messenger

  2. Backend
    • Python
    • FastAPI (Webhook Server)

  3. AI / NLP
    • Dialogflow ES (Intents, Entities, Contexts)

  4. Database
    • MySQL

๐Ÿง  System Architecture

User interacts with the chatbot through a web interface powered by Dialogflow Messenger.
Dialogflow processes user input using NLU and triggers a webhook request to the FastAPI backend.
The backend handles business logic, manages conversational state, and interacts with a MySQL database for order persistence and tracking.

User (Browser)
โ†“
Dialogflow Messenger
โ†“
Dialogflow ES (NLU, Intents, Contexts)
โ†“
FastAPI Webhook (Python)
โ†“
MySQL Database

๐Ÿ“ธ Project Screenshots



New Order



















Order Tracking

About

NLP | AI-powered food ordering chatbot built using Dialogflow ES, FastAPI, and MySQL, supporting conversational ordering, dynamic order management, and order tracking.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors