Skip to content

srs1234peng/ReciPic

Repository files navigation

Recipe Recognition App

Project Overview

This mobile application allows users to upload images of food items and receive recipe recommendations based on the ingredients detected in those images. The app uses a combination of local image processing and remote API calls to a backend server that performs recipe recognition and returns relevant recipes. It features user preference tracking and personalized recipe suggestions.

Features

  • Image Upload: Users can either take a photo or select an image from their gallery.
  • Recipe Recognition: Images are sent to a backend where ingredients are recognized and matched with available recipes.
  • Personalization: User preferences are saved and used for tailored recipe suggestions.
  • Recipe Display: Recipes are displayed along with their sources, indicating whether they are from the database ('DB') or generated by machine learning models ('LLM').

Technologies Used

  • React Native: For building the mobile application.
  • Expo: Used to handle media picking and manipulation tasks.
  • Firebase: For user authentication, storage, and real-time data management.
  • Node.js/Express: Backend server for processing images and querying recipes.

Setup and Installation

Prerequisites

  • Node.js
  • npm or Yarn
  • Expo CLI
  • Firebase Account
  • React Native setup on the development machine

Installing Dependencies

Clone the repository and install the dependencies: git clone https://github.com/srs1234peng/ReciPic.git cd project npm install

Configuring Firebase

  1. Create a Firebase project in your Firebase console.
  2. Add an app to your project and download the firebase-config.js file.
  3. Place firebase-config.js in your project's root directory.
  4. Ensure that Firebase storage and authentication are enabled in your Firebase project.

Running the App

Start the Expo development server: npx expo start

Scan the QR code with your Expo Go app on your mobile device or use an emulator to run the app.

Usage

  1. Starting the App: Open the app on your device.
  2. Uploading Images: Navigate to the Explore screen, and either take a photo or select an image from your library.
  3. Viewing Recipes: After image processing, view the suggested recipes on the Recipe List screen.
  4. Saving Preferences: Select a recipe to save it to your preference history for personalized suggestions.

Contributing

Contributions are welcome, and any contributors who want to make this project better can make changes to the repository. To contribute:

  1. Fork the project.
  2. Create your feature branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a pull request.

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Hanzhang Peng - [email protected]

Project Link: ReciPic

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •