stephane-r / food-examiner

An application that uses machine learning api (Clarifai) to recognize food (demo at bottom)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Food Examiner

An application that provides various food related inforamtion including

  • Food image recognition with machine learning (powered by Clarifai API)
  • Food images request (powered by Unsplash API)
  • Recipes search (powered by Recipe Puppy API)

Demo

Demo

Demo on Heroku

https://food-examiner.herokuapp.com/

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

You will need to have node.js installed, you can install node.js via https://nodejs.org/en/

Installing

Install dependencies for server

$ npm install

Install dependencies for client

$ cd client
$ npm install

Environment variable file

Create a .env file for api keys, an example named .env.example is provided, the .env file will follow the same format as .env.example.

Please refer to the respective documentation on how to setup api keys for different apis.

Running the application

Runnng the client

$ cd client
$ npm start
### client runs on localhost:3000

Running the server

$ nodemon app.js
### server runs on localhost:3001

Deploy on Heroku

  1. Make sure you have a Heroku account, you can register an account at https://www.heroku.com/
  2. Make sure you have the Heroku CLI installed, you can install it via https://devcenter.heroku.com/articles/heroku-cli
  3. Download the project as zip or clone the project with git clone
    $ git clone https://github.com/williamang2736/food-services.git
    
  4. Login with heroku
    $ login heroku
    
  5. Go to the heroku web dashboard, press on 'New' -> 'Create new app'
  6. Enter your application name and submit
  7. Setup environment variables by going to 'Settings' -> 'Reveal config vars' -> provide the environment variable values.
  8. Add heroku as a remote repository
     $ git init
     $ heroku git:remote -a <your-heroku-application-name>
    
  9. Push to heroku (deploy)
    $ git push heroku master
    

Built With

  • Express - The server side web framework
  • React - Front end library
  • Redux - State management
  • Please refer to package.json file for more information

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

An application that uses machine learning api (Clarifai) to recognize food (demo at bottom)

License:MIT License


Languages

Language:JavaScript 89.9%Language:CSS 5.7%Language:HTML 4.4%