Skip to content

Latest commit

 

History

20 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

🍽️ DishCover

Taste the World in Your Language

Hackathon Tech Deployment License

DishCover is an intelligent culinary companion designed for the modern nomad. It bridges the gap between cultural curiosity and language barriers by providing deep, structured food intelligence localized instantly via Lingo.dev.


🚩 The Problem

Food is the soul of travel, yet menus are often the biggest barrier.

  • Words vs. Meaning: Standard tools translate words (e.g., "Okonomiyaki"), but they don't explain the soul (ingredients, history, or the correct way to eat it).
  • Safety & Diet: Travelers with allergies or dietary restrictions need structured, reliable data—not just a literal translation.
  • Context: Translation tools convert text; they do not convey the meaning, context, or culture of a dish.

🌐 The Role of Localization

In DishCover, localization isn't an afterthought—it's the core engine. Powered by the Lingo.dev SDK, we achieve True Localization:

  1. Structural Integrity: Localizing complex JSON objects without breaking the technical schema.
  2. Cultural Resonance: Delivering food stories that feel natural and authentic in the user's native tongue.
  3. Consistency: Ensuring that every technical field—from spiceLevel to allergenWarnings—remains consistent across 50+ languages.

✨ Key Features

🧠 Dish Intelligence

Search any dish to receive a comprehensive "Food Intelligence Profile":

  • Sensory Profile: Taste and texture details (Umami, Crispy, Tangy).
  • Safety First: Structured allergen warnings and dietary specs (Vegan, Gluten-Free).
  • The Legacy: The cultural story behind the plate and local "Insider Tips."

🌆 City Discovery

Arriving in a new city? Instantly discover the famous dishes that define its culinary identity.

🌍 Seamless Multilingual UI

Switch languages on the fly. The entire UI and the AI-generated backend data transform instantly using Lingo.dev’s high-performance localization.


🏗️ System Architecture

DishCover uses a sophisticated pipeline to ensure AI data is both accurate and perfectly localized.

graph TD
    subgraph Client_Side [Frontend]
        User([👤 User])
        Next[Next.js App]
    end

    subgraph Server_Side [Backend]
        Express[Express API]
    end

    subgraph External_Services [AI & Localization]
        Gemini{{Google Gemini AI}}
        JSON[Structured JSON]
        Lingo(Lingo.dev SDK)
    end

    %% Flow
    User -->|Interaction| Next
    Next -->|POST Request| Express
    Express -->|Generates| Gemini
    Gemini -->|Returns| JSON
    JSON -->|Localizes| Lingo
    Lingo -->|Final Object| Express
    Express -->|Localized Response| Next
    Next -->|Renders| User

    %% Modern Styling
    style User fill:#f0f0f0,stroke:#333
    style Next fill:#000,color:#fff,stroke:#333
    style Express fill:#4CAF50,color:#fff,stroke:#2E7D32
    style Gemini fill:#4285F4,color:#fff,stroke:#1565C0
    style Lingo fill:#FF9800,color:#fff,stroke:#EF6C00
    style JSON fill:#fff,stroke-dasharray: 5 5
Loading

The Request Lifecycle:

  1. Search: User inputs a query and selects a language.
  2. Intelligence: Backend invokes Google Gemini AI to generate a structured JSON profile.
  3. Localization: The raw JSON is passed through the Lingo.dev SDK for instant translation.
  4. Rendering: The localized data is returned to the frontend and rendered via a Framer Motion bento grid.

🛠️ Tech Stack

Layer Technology
Frontend Next.js 15, TypeScript, TailwindCSS, Shadcn UI, Framer Motion
Backend Node.js, Express, TypeScript, Zod
Localization Lingo.dev SDK
AI Engine Google Gemini
Deployment Vercel (Frontend), Render (Backend)

📂 Project Structure

dishcover/
├── 📱 frontend   # Next.js Client (Shadcn UI + Framer Motion)
├── ⚙️ backend    # Express API (AI Logic & Lingo.dev SDK)
└── 📄 README.md  # Global Project Documentation

🚀 Live Experience


🔮 Future Improvements

  • Persistent Dish Database: Implementing a database for faster data retrieval and history.
  • Image-based Dish Recognition: Ability to scan a physical menu to discover dish details.
  • Personalized "Food Passport": A feature for users to save and track their culinary favorites.
  • Regional Food Exploration Maps: Interactive maps to explore food by geographical origin.

👨‍💻 Author

Jayesh Khuman Software Developer


Built with ❤️ for the Lingo.dev Multilingual Hackathon.

Releases

Packages

Contributors

Languages