Skip to content

A responsive web application that helps small businesses like salons and food stalls create, customize, and share digital menus easily.

License

Notifications You must be signed in to change notification settings

Shannu3766/MenuGenie

Repository files navigation

MenuGenie Server

MenuGenie is a Django-based web application for restaurant owners to digitize and manage their menus. It leverages Google Gemini AI to extract structured menu data from images, making menu creation fast and easy.

Features

  • User registration and authentication (with email verification)
  • Restaurant owner and customer roles
  • Create and manage restaurants and menus
  • Upload menu images and extract menu sections/items/prices using Google Gemini AI
  • Organize menu items by sections
  • Add, edit, and delete menu items and sections
  • Public and private menu views

Screenshots

Home Page

Home Page

Restaurant Page

Restaurant Page

Live Menu

Live Menu

Template Change

Template Change

Technology Stack

  • Python 3.x
  • Django 5.2.3
  • SQLite (default, can be changed)
  • Google Gemini AI (for menu extraction)
  • Pillow (image processing)

Installation

  1. Clone the repository:
    git clone <repo-url>
    cd menuserver
  2. Install dependencies:
    pip install -r requirements.txt
  3. Apply migrations:
    python manage.py migrate
  4. Create a superuser (optional, for admin access):
    python manage.py createsuperuser
  5. Run the development server:
    python manage.py runserver

Configuration

  • Google Gemini API Key:
    • Set your Google Gemini API key in menuserver/settings.py as GOOGLE_API_KEY.
  • Email Settings:
    • Configure SMTP settings in menuserver/settings.py for email verification.
  • Media and Static Files:
    • Uploaded images are stored in the media/ directory.

Usage

  • Register as a user (choose restaurant owner if you want to manage menus).
  • Create a restaurant and upload a menu image to extract menu data automatically.
  • Manage menu sections and items via the web interface.
  • Customers can view public menus.

Example: Extracting Menu from Image (Standalone)

You can test the Gemini AI extraction using test.py:

python test.py

Edit test.py to set your image path and API key.

Dependencies

See requirements.txt for all dependencies:

  • Django >= 5.2.3
  • Pillow
  • google-generativeai

License

MIT License

Contact

For questions or support, contact: 98sh32@gmail.com

About

A responsive web application that helps small businesses like salons and food stalls create, customize, and share digital menus easily.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages