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)
https://food-examiner.herokuapp.com/
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.
You will need to have node.js installed, you can install node.js via https://nodejs.org/en/
Install dependencies for server
$ npm install
Install dependencies for client
$ cd client
$ npm install
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.
- Unsplash: https://unsplash.com/documentation
- Clarifai: https://clarifai.com/developer/docs/
- Google Recaptcha: https://www.google.com/recaptcha/intro/v3.html
Runnng the client
$ cd client
$ npm start
### client runs on localhost:3000
Running the server
$ nodemon app.js
### server runs on localhost:3001
- Make sure you have a Heroku account, you can register an account at https://www.heroku.com/
- Make sure you have the Heroku CLI installed, you can install it via https://devcenter.heroku.com/articles/heroku-cli
- Download the project as zip or clone the project with git clone
$ git clone https://github.com/williamang2736/food-services.git
- Login with heroku
$ login heroku
- Go to the heroku web dashboard, press on 'New' -> 'Create new app'
- Enter your application name and submit
- Setup environment variables by going to 'Settings' -> 'Reveal config vars' -> provide the environment variable values.
- Add heroku as a remote repository
$ git init $ heroku git:remote -a <your-heroku-application-name>
- Push to heroku (deploy)
$ git push heroku master
- Express - The server side web framework
- React - Front end library
- Redux - State management
- Please refer to package.json file for more information
This project is licensed under the MIT License - see the LICENSE.md file for details